# Entstehung von NULL-Werten in Formeln

NULL-Werte entstehen mitunter auch als Ergebnis von Formeln. Dies richtet sich nach einigen einfachen und logischen Gesetzen.

## Funktionen

Eine Funktion ergibt grundsätzlich den NULL-Wert, wenn die Parameter oder Argumente außerhalb des Definitionsbereichs der Funktion liegen.

Beispiel:

* asin(2) liefert NULL
* log(-5) liefert NULL
* round(A,0) liefert NULL

Aus Obigem folgt, dass eine Funktion generell NULL liefert, wenn einer der für die Evaluierung benötigten Parameter NULL ist.

Beispiel:

* sin(NULL) liefert NULL
* chr(NULL) liefert NULL
* if(NULL, A, B) liefert B
* if(True, NULL, A) liefert NULL
* if(True, A, NULL) liefert A

Eine Ausnahme bilden Funktionen, die einen logischen Test durchführen.

Beispiel:

* isnull(NULL) liefert Wahr (-1)
* isnum(NULL) liefert Falsch (0)

### Arithmetische Operatoren und String-Operatoren

Steht auf einer Seite dieser Operatoren NULL, wird NULL zurückgegeben.

Beispiel:

* A + NULL liefert NULL
* A - NULL liefert NULL
* A / NULL liefert NULL
* A \* NULL liefert NULL
* NULL / A liefert NULL
* 0 / NULL liefert NULL
* 0 \* NULL liefert NULL
* A & NULL liefert A

### Relationale Operatoren

Besondere Regeln gelten für den Fall, dass auf einer Seite des relationalen Operators ein NULL-Wert steht.

Beispiel:

* NULL rel.op NULL liefert NULL
* A &lt;&gt; NULL liefert Wahr (-1)
* A &lt; NULL liefert Falsch (0)
* A &lt;= NULL liefert Falsch (0)
* A = NULL liefert Falsch (0)
* A &gt;= liefert Falsch (0)
* A &gt; NULL liefert Falsch (0)