Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

NULL-Werte im Programm

Werden bei einer Datenbankabfrage bzw. bei einem Join zwischen Tabellen für ein Feld keine Werte gefunden, führt dies üblicherweise zu NULL-Werten.

Überblick

Qlik Sense liefert in folgenden Fällen NULL-Werte:

  • NULL-Werte werden aus einer ODBC-Verbindung zurückgegeben.

  • NULL-Werte, die bei einer erzwungenen Zusammenfassung von Tabellen im Datenladeskript entstehen.

  • NULL-Werte, die durch einen join-Befehl im Datenladeskript entstehen

  • NULL-Werte, die bei der Kombination von Feldwerten zur Anzeige in Tabellen entstehen

InformationshinweisNormalerweise ist es nicht möglich, NULL-Werte auszuwählen oder für Verknüpfungen zu nutzen, es sei denn, dies ist durch den Befehl NullAsValue ausdrücklich zugelassen.

Weitere Informationen zu NullAsValue finden Sie unter NullAsValue.

Textdateien können per Definition keine NULL-Werte enthalten.

Verknüpfen/Auswählen von NULL-Werten aus ODBC

Es ist möglich, NULL-Werte aus einer ODBC-Datenquelle auszuwählen bzw. für Verknüpfungen zu benutzen. Für diesen Zweck ist eine Skriptvariable vorgesehen. Folgende Syntax kann verwendet werden:

SET NULLDISPLAY=<sym>;

Das angegebene Symbol <sym> ersetzt alle NULL-Werte aus der ODBC-Datenquelle auf dem niedrigsten Datenlevel. <sym> kann ein beliebiger String sein.

Um diesen Befehl rückgängig zu machen, geben Sie folgende Syntax ein:

SET NULLDISPLAY=;

InformationshinweisDie Variable NULLDISPLAY ist nur für Daten aus ODBC-Datenquellen relevant.

Wenn Qlik Sense NULL-Werte aus ODBC-Verbindungen auf diese Weise behandeln soll, definieren Sie vor dem SELECT-Befehl für die Variable nulldisplay den Leer-String:

SET NULLDISPLAY=";

Informationshinweis'' steht hier für zwei senkrechte, einfache Anführungszeichen ohne Zwischenraum.

Weitere Informationen zu NullDisplay finden Sie unter NullDisplay .

Erstellen von NULL-Werten aus Textdateien

Es ist möglich, ein Symbol zu definieren, das als inline-Wert interpretiert wird, wann immer es in Textdateien oder NULL-Befehlen auftritt. Benutzen Sie dazu folgenden Befehl:

SET NULLINTERPRET=<sym>;

Dabei ist <sym> ein beliebiger String, der als NULL-Wert interpretiert werden soll. <sym> kann ein beliebiger String sein.

Um diesen Befehl rückgängig zu machen, geben Sie Folgendes ein:

SET NULLINTERPRET=;

Informationshinweis Die Variable NULLINTERPRET ist nur für Daten aus Textdateien oder inline-Befehlen relevant.

Weitere Informationen zu NullInterpret finden Sie unter NullInterpret .

Propagierung 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.

Beispiele
Formel Ergebnis
asin(2) gibt NULL zurück
log(-5) gibt NULL zurück
round(A,0) liefert NULL

Logischerweise liefert eine Funktion auch dann NULL, wenn einer der zwingend benötigten Parameter NULL ist.

Beispiele
Formel Ergebnis
sin(NULL) gibt NULL zurück
chr(NULL) gibt NULL zurück
if(NULL, A, B) gibt B zurück
if(True, NULL, A) gibt NULL zurück
if(True, A, NULL) liefert A

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

Beispiele
Formel Ergebnis
isnull(NULL) gibt True (-1) zurück
isnum(NULL) liefert False (0)

Arithmetische Operatoren und String-Operatoren

Steht auf dieser Seite dieser Operatoren ein NULL-Wert, ist das Ergebnis NULL.

Beispiele
Formel Ergebnis
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.

Beispiele
Formel Ergebnis
NULL (beliebiger Beziehungsoperator) NULL liefert NULL
A <> NULL liefert True (-1)
A < NULL liefert False (0)
A <= NULL liefert False (0)
A = NULL liefert False (0)
A >= NULL liefert False (0)
A > NULL liefert False (0)

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!