Konzept: NULL-Werte in Tabellen und Datasets
Wenn ein Feldwert in einer Tabelle oder einem Dataset leer ist, wird er als NULL-Wert betrachtet. Wenn Sie eine Tabelle für die Analyse aktivieren oder ein Dataset veröffentlichen, ersetzt Workday alle NULL-Werte in der Prism-Datenquelle durch einen Standardwert. Prism-Datenquellen, Discovery Boards und Berichte haben kein Konzept für NULL-Werte.
Wie Tabellen NULL-Werte verarbeiten
Ein Wert kann NULL sein, da in den Rohdaten aus der Quelle für ein bestimmtes Feld Werte fehlen.
Wie Datasets NULL-Werte verarbeiten
Ein Wert kann aus folgenden Gründen NULL sein:
- Die Rohdaten aus der Quelle enthalten für ein bestimmtes Feld keine Werte.
- Die Rohdaten aus einer externen Datenquelle können für die angegebene Feldart nicht geparst werden.
- Ein von Prism berechneter Feldausdruck gibt ein leeres oder ungültiges Ergebnis zurück.
- Das Dataset enthält eine Join-Phase und Folgendes:
- Sie konfigurieren einen Outer Join (Sie schließen alle Zeilen aus mindestens einer der Dataset-Pipelines ein).
- Es gibt keine Übereinstimmung von einer Pipeline mit der anderen.
Standardwerte nach Feldart
Workday ersetzt NULL-Werte in einer Prism-Datenquelle durch folgende Werte:
Feldart | Wert in Prism-Datenquelle |
|---|---|
Boolesch | Falsch |
Währung | 0 (mit leerem Währungscode) |
Datum | (Leer)
Wenn der Datumswert in einer für die Analyse aktivierten Tabelle 0000-12-31T23:59:59.999Z , dann zeigt Workday ein inkonsistentes Ergebnis an. |
Numerisch, Doppelt, Integer, Lang | 0 |
Instanz | (Leer) |
Multiinstanz | (Leer) |
Text | (Leer) |
NULL-Werte in Ausdrücken
Prism Analytics verwendet Ausdrücke in berechneten Prism-Feldern, in Filterphasen und bei der Definition benutzerdefinierter Beispieldaten in einem abgeleiteten Dataset. Die Art und Weise, wie Datasets NULL-Werte in Ausdrücken behandeln, entspricht dem SQL-Standard. Das bedeutet:
- Arithmetische Berechnungen für numerische Felder, die NULL enthalten, geben NULL zurück. Beispiel:5 + NULLgibt NULL zurück.
- Vergleichsvorgänge, die zu einem booleschen Feld mit einem NULL-Wert führen, geben NULL zurück. Beispiel:5 > NULLgibt NULL zurück.
Währungsfelder haben zwei Komponenten für den Feldwert (den Währungscode und den Währungswert). Daher behandeln sie NULL-Werte etwas anders als numerische Felder in arithmetischen Berechnungen.
- Additions- und Subtraktionsberechnungen für Währungsfelder, die einen NULL-Wert beinhalten, geben NULL zurück. Beispiel:TO_CURRENCY("5.00 USD") + NULLgibt NULL zurück.
- Additions- und Subtraktionsberechnungen für Währungswerte, die unterschiedliche Währungscodes verwenden, geben NULL zurück. Beispiel:TO_CURRENCY("5.00 USD") + TO_CURRENCY("5.00 EUR")gibt NULL zurück.
In Vergleichsvorgängen können Sie keine "Currency"-Felder verwenden. Sie können jedoch NULL-Werte mit der folgenden Syntax testen:
valueIS NULLvalueIS NOT NULL
Weitere Details zu booleschen Ausdrücken finden Sie unter Referenz: Boolesche Ausdrücke.
NULL-Werte in Phasen filtern
Wenn Sie ein Feld mit einem ähnlichen Ausdruck wie filtern
[field] != MyValue
Workday filtert alle Datensätze mit dem Wert MyValue oder NULL. Die Logik hinter diesem Verhalten ist:
- Vergleichsoperatoren, die NULL beinhalten, geben NULL zurück.
- Workday evaluiert boolesche Werte für NULL als "Falsch".
NULL-Werte in Phasen für Gruppierung nach
Wenn Sie eine Phase unter „Gruppieren nach“ erstellen, wählen Sie ein Dataset-Feld für die Gruppierung und ein anderes Feld für die Zusammenfassung aus. Wie Workday NULL-Werte behandelt, hängt davon ab, wie Sie das Feld verwenden:
- Bei Gruppierungsfeldern führen alle NULL-Werte zu einer eigenen Gruppe.
- Bei Zusammenfassungsfeldern hängt die NULL-behandlung von der Zusammenfassungsart ab.
Zusammenfassungsart | Beschreibung |
|---|---|
Durchschnitt | Gibt den Durchschnitt aller gültigen numerischen Werte in der Gruppe zurück. Summiert alle Werte im bereitgestellten Ausdruck und teilt sie durch die Anzahl der gültigen (nicht NULL-)Zeilen.
Wenn ein Währungsfeld mehrere Währungscodes enthält, ist das Ergebnis NULL. |
Anzahl | Gibt die Anzahl aller Zeilen in einer Gruppe zurück (zählt alle Werte, sowohl NULL als auch nicht NULL).
Wenn ein Währungsfeld mehrere Währungscodes enthält, ist das Ergebnis NULL. |
Maximum | Gibt den größten aller Nicht-NULL-Werte zurück und gibt NULL zurück, wenn alle Werte NULL sind.
Wenn ein Währungsfeld mehrere Währungscodes enthält, ist das Ergebnis NULL. |
Minimum | Gibt den niedrigsten aller Werte zurück, der nicht NULL ist, und gibt NULL zurück, wenn alle Werte NULL sind.
Wenn ein Währungsfeld mehrere Währungscodes enthält, ist das Ergebnis NULL. |
Summe | Gibt die Summe aller Nicht-NULL-Werte zurück und gibt NULL zurück, wenn alle Werte NULL sind.
Wenn ein Währungsfeld mehrere Währungscodes enthält, ist das Ergebnis NULL. |