Jeśli w rezultacie zapytania w bazie danych lub połączenia między tabelami nie można wygenerować danych dla określonego pola, wynikiem jest z reguły wartość NULL.
Przegląd
Następujące wartości są w logice aplikacji Qlik Sense traktowane jako prawdziwe wartości NULL:
- 
                        wartości NULL zwrócone z połączenia ODBC; 
- 
                        wartości NULL utworzone w wyniku wymuszonej konkatenacji tabel w skrypcie ładowania danych; 
- 
                        wartości NULL utworzone w wyniku sprzężenia wykonanego w skrypcie ładowania danych; 
- 
                        wartości NULL utworzone w wyniku wygenerowania kombinacji wartości pól na potrzeby wyświetlania w oknie tabeli. 
Więcej informacji o NullAsValue zawiera temat NullAsValue.
Pliki tekstowe z definicji nie mogą zawierać wartości NULL.
Powiązanie/wybieranie wartości NULL z ODBC
Możliwe jest powiązywanie i wybieranie wartości NULL ze źródła danych ODBC. Zdefiniowano w tym celu zmienną skryptową. Można użyć następującej składni:
Symbol <sym> zastąpi wszystkie wartości NULL ze źródła danych ODBC na najniższym poziomie wprowadzania danych. <sym> może być dowolnym ciągiem.
W celu przywrócenia domyślnej interpretacji tej funkcji należy użyć następującej składni:
SET NULLDISPLAY=;
Jeśli logika aplikacji Qlik Sense ma interpretować wartości NULL zwracane z połączenia ODBC jako pusty ciąg znaków, umieść w skrypcie następującą instrukcję przed pierwszą instrukcją SELECT:
SET NULLDISPLAY=";
Więcej informacji o NullDisplay zawiera temat NullDisplay .
Tworzenie wartości NULL z plików tekstowych
Można zdefiniować symbol, którego wystąpienie w pliku tekstowym lub klauzuli inline będzie interpretowane jako rzeczywista wartość NULL. Użyj następującej instrukcji:
Symbol <sym> będzie interpretowany jako NULL. <sym> może być dowolnym ciągiem.
W celu przywrócenia domyślnej interpretacji tej funkcji użyj:
SET NULLINTERPRET=;
Więcej informacji o NullInterpret zawiera temat NullInterpret .
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.
| Wyrażenie | Wynik | 
|---|---|
| asin(2) | zwraca wartość NULL | 
| log(-5) | zwraca wartość NULL | 
| round(A,0) | zwraca wartość 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.
| Wyrażenie | Wynik | 
|---|---|
| sin(NULL) | zwraca wartość NULL | 
| chr(NULL) | zwraca wartość NULL | 
| if(NULL, A, B) | zwraca wartość B | 
| if(True, NULL, A) | zwraca wartość NULL | 
| if(True, A, NULL) | zwraca wartość A | 
Wyjątkiem od tej drugiej reguły są funkcje logiczne sprawdzające typ.
| Wyrażenie | Wynik | 
|---|---|
| isnull(NULL) | zwraca wartość True (-1) | 
| isnum(NULL) | zwraca wartość 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.
| Wyrażenie | Wynik | 
|---|---|
| A + NULL | zwraca wartość NULL | 
| A - NULL | zwraca wartość NULL | 
| A / NULL | zwraca wartość NULL | 
| A * NULL | zwraca wartość NULL | 
| NULL / A | zwraca wartość NULL | 
| 0% NULL | zwraca wartość NULL | 
| 0% NULL | zwraca wartość NULL | 
| A & NULL | zwraca A | 
Operatory relacyjne
Obsługa wartości NULL po dowolnej stronie operatorów relacyjnych podlega specjalnym zasadom.
| Wyrażenie | Wynik | 
|---|---|
| NULL (dowolny operator relacyjny) NULL | zwraca wartość NULL | 
| A <> NULL | zwraca wartość True (-1) | 
| A < NULL | zwraca wartość False (0) | 
| A <= NULL | zwraca wartość False (0) | 
| A = NULL | zwraca wartość False (0) | 
| A >= NULL | zwraca wartość False (0) | 
| A > NULL | zwraca wartość False (0) |