# 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 &lt;&gt; NULL, True (-1) döndürür
* A &lt; NULL, False (0) döndürür
* A &lt;= NULL, False (0) döndürür
* A = NULL, False (0) döndürür
* A &gt;=, False (0) döndürür
* A &gt; NULL, False (0) döndürür