NULL değerlerin ifadelerde yayılması
NULL değerler, birkaç mantıksal ve oldukça makul kurala göre ifade içinde yayılır.
Fonksiyonlar
Genel kural şudur: Parametreler fonksiyonun tanımlandığı aralığın dışına çıktığında fonksiyonlar NULL değer döndürür.
Örnek:
- asin(2) şunu döndürür: NULL
- log(-5) şunu döndürür: NULL
- round(A,0) şunu döndürür: NULL
Yukarıdakinin bir sonucu olarak, değerlendirme için gerekli olan parametrelerden herhangi birinin NULL olması durumunda fonksiyonlar genellikle NULL sonucunu döndürür.
Örnek:
- sin(NULL) şunu döndürür: NULL
- chr(NULL) şunu döndürür: NULL
- if(NULL, A, B) şunu döndürür: B
- if(True, NULL, A), NULL döndürür
- if(True, A, NULL), A döndürür
İkinci kuralın istisnası, türü test eden mantıksal fonksiyonlardır.
Örnek:
- isnull(NULL), True (-1) döndürür
- isnum(NULL), False (0) döndürür
Aritmetik ve dize işleçleri
Bu işleçlerin herhangi bir tarafında NULL ile karşılaşılırsa NULL sonucu döndürülür.
Örnek:
- A + NULL şunu döndürür: NULL
- A - NULL şunu döndürür: NULL
- A / NULL şunu döndürür: NULL
- A * NULL, NULL döndürür
- NULL / A, NULL döndürür
- 0 / NULL, NULL döndürür
- 0 * NULL, NULL döndürür
- A & NULL, A döndürür
İlişkisel işleçler
İlişkisel işleçlerin herhangi bir tarafında NULL ile karşılaşılırsa özel kurallar geçerlidir.
Örnek:
- NULL rel.op NULL şunu döndürür: NULL
- A <> NULL, True (-1) döndürür
- A < NULL, False (0) döndürür
- A <= NULL, False (0) döndürür
- A = NULL, False (0) döndürür
- A >=, False (0) döndürür
- A > NULL, False (0) döndürür