Propagacja wartości NULL w wyrażeniach
                Wartości NULL są propagowane w wyrażeniach według kilku reguł logicznych zgodnych z intuicją.
Funkcje
Ogólna zasada jest taka, że funkcje zwracają wartość NULL, jeśli ich parametry wykraczają poza zakres zdefiniowanych wartości działania funkcji.
Przykład:
- asin(2) zwraca NULL
 - log(-5) zwraca NULL
 - round(A,0) zwraca NULL
 
Z powyższej reguły wynika, że funkcje zazwyczaj zwracają wartość NULL, jeśli dowolny z parametrów niezbędnych do obliczenia wartości jest równy NULL.
Przykład:
- sin(NULL) zwraca NULL
 - chr(NULL) zwraca NULL
 - if(NULL, A, B) zwraca B
 - if(True, NULL, A) zwraca NULL
 - if(True, A, NULL) zwraca A
 
Wyjątkiem od tej drugiej reguły są funkcje logiczne sprawdzające typ.
Przykład:
- isnull(NULL) zwraca True (-1)
 - isnum(NULL) zwraca False (0)
 
Operatory arytmetyczne i działające na ciągach znaków
Jeśli po dowolnej stronie tych operatorów napotykana jest wartość NULL, zwracana jest wartość NULL.
Przykład:
- A + NULL zwraca NULL
 - A - NULL zwraca NULL
 - A / NULL zwraca NULL
 - A * NULL zwraca NULL
 - NULL / A zwraca NULL
 - 0 / NULL zwraca NULL
 - 0 * NULL zwraca NULL
 - A & NULL zwraca A
 
Operatory relacyjne
Obsługa wartości NULL po dowolnej stronie operatorów relacyjnych podlega specjalnym zasadom.
Przykład:
- NULL rel.op NULL zwraca NULL
 - A <> NULL zwraca True (-1)
 - A < NULL zwraca False (0)
 - A <= NULL zwraca False (0)
 - A = NULL zwraca False (0)
 - A >= zwraca False (0)
 - A > NULL zwraca False (0)