跳至主要內容
Workday User Guide
上次更新時間 :2024-07-12
概念︰表格和資料集中的 NULL 值

概念︰表格和資料集中的 NULL 值

如果表格或資料集中的欄位值為空白,則會被視為 NULL 值。當您啟用表格進行分析或發布資料集時,Workday 會以 Prism 資料來源中的預設值取代所有 NULL 值。Prism 資料來源、探索看板和報告沒有 NULL 值的概念。

表格如何處理 NULL 值

值可以為 NULL,因為來源的原始資料缺少特定欄位的值。

資料集處理 NULL 值的方式

值可能為 NULL 的原因如下︰
  • 來源的原始資料缺少特定欄位的值。
  • 無法針對指定的欄位類型剖析來自外部資料來源的原始資料。
  • Prism 計算欄位運算式會傳回空白或無效的結果。
  • 資料集包含「聯結」階段,且︰
    • 您配置外部聯結 (包括至少一個資料集資料處理進程中的所有列)。
    • 1 個資料處理進程與另一個資料處理進程沒有相符項目。
    如果您熟悉 SQL,這類似於未聯結的外鍵。

預設值 - 依欄位類型

Workday 會在 Prism 資料來源中以下列值取代 NULL︰
欄位類型
Prism 資料來源中的值
布林運算子
False
貨幣
0 (貨幣代碼空白)
日期
(空白)
如果表格中啟用分析的日期值為
0000-12-31T23:59:59.999Z
,則 Workday 顯示的結果不一致。
數值、雙精度、整數、長整數
0
實例
(空白)
多重實例
(空白)
文字
(空白)

運算式中的 NULL 值

Prism 分析會在 Prism 計算欄位、篩選階段,以及在衍生資料集中定義自訂範例資料時使用運算式。資料集處理運算式中 NULL 值的方式與 SQL 標準一致。這表示︰
  • 對涉及 NULL 的數值欄位進行算術計算,會傳回 NULL。範例︰
    5 + NULL
    傳回 NULL。
  • 產生涉及 NULL 的布林值欄位的比較運算會傳回 NULL。範例︰
    5 > NULL
    傳回 NULL。
「貨幣」欄位的欄位值有 2 個組成元素 (貨幣代碼和貨幣值),因此在處理 NULL 時,與算術計算中的數值欄位略有不同。
  • 「貨幣」欄位的加法和減法計算若有 NULL,則會傳回 NULL。範例︰
    TO_CURRENCY("5.00 USD") + NULL
    傳回 NULL。
  • 使用不同貨幣代碼的貨幣值的加法和減法計算會傳回 NULL。範例︰
    TO_CURRENCY("5.00 USD") + TO_CURRENCY("5.00 EUR")
    傳回 NULL。
您無法在比較運算中使用貨幣欄位。但是,您可以使用以下語法來測試 NULL 值︰
value
IS NULL
value
IS NOT NULL
如需有關布林運算式的詳細資料,請參閱 「參照︰布林運算式」

篩選階段中的 NULL 值

當您使用類似「」的運算式對欄位進行篩選時
[field] != MyValue
、Workday 會篩選掉所有值為 MyValue 或 NULL 的記錄。此行為背後的邏輯如下︰
  • 涉及 NULL 的比較運算子會傳回 NULL。
  • Workday 將 NULL 布林值評估為 False。

「分組依據」階段中的 NULL 值

當您建立「分組依據」階段時,您可以選取一個資料集欄位進行分組,並選取另一個欄位進行匯總。Workday 處理 NULL 值的方式取決於您使用以下欄位的方式︰
  • 對於分組欄位,任何 NULL 值都會產生各自的群組。
  • 對於匯總欄位,NULL 的處理取決於匯總類型。
匯總類型
說明
平均
傳回群組中所有有效數值的平均值。它將提供的運算式中所有值加總,然後除以有效 (非 NULL) 的列數。
如果貨幣欄位包含多個貨幣代碼,則結果為 NULL。
計數
傳回群組中所有列的數目 (計算所有值,包括 NULL 和非 NULL)。
如果貨幣欄位包含多個貨幣代碼,則結果為 NULL。
最高
傳回所有非 NULL 值的最大值,如果所有值都為 NULL,則傳回 NULL。
如果貨幣欄位包含多個貨幣代碼,則結果為 NULL。
最低
傳回所有非 NULL 值的最小值,如果所有值都為 NULL,則傳回 NULL。
如果貨幣欄位包含多個貨幣代碼,則結果為 NULL。
總和
傳回所有非 NULL 值的總和,如果所有值為 NULL,則傳回 NULL。
如果貨幣欄位包含多個貨幣代碼,則結果為 NULL。