簡體   English   中英

如果tableau計算字段中的零件未執行

[英]IF part in tableau calculated field is not getting executed

我想在tableau中創建一個計算字段,其值應取決於其他字段的值。 以下是計算所得的計算字段[D]

IF [A]=NULL
THEN [B]
ELSE [C]
END

此計算字段始終為else部分分配值([D]填充為[c]的值)。 注意:[A],[B]和[C]是表格中的現有字段(均為字符串類型)

嘗試這個:

IF ISNULL([A])
THEN [B]
ELSE [C]
END

字段中的Null值表示該字段中沒有任何內容,並且不存儲NULL

如果您真的想比較字段中的NULL ,請用作IF ISNULL([A]) 使用基於文件的數據源,例如Excel或CSV,您還可以使用IF [A]=''檢查空字符串-因為這些數據源不能區分null和空字符串。

正如其他人指出的那樣,您可以使用ISNULL()來測試字段是否具有空值。 使用ISNULL()測試值是否存在與使用相等測試值不同

這並非完全是您要的情況,但是有時,對於沒有指定任何值的情況,您可能總是希望使用該字段的默認值,在這種情況下,IFNULL()函數很有用。 如果存在非空值,則返回其第一個參數的值,否則返回第二個參數的值。

假設您有一個名為Approver的字段,並且如果在數據中未指定Approver,則默認值為“ Fred”。 一種可靠的方法是首先:

  • 將Tableau中的Approver字段重命名為Approver-Original
  • 定義一個新的審批者字段為ifnull(Approver-Original, "Fred")
  • 隱藏批准人原始字段

然后,您可以在希望有任何值的地方安全地使用批准人,並且將應用默認值的信息放在一個地方。

對於數字字段,還有一個名為ZN()的函數,如果參數為null,則該函數返回零。 在零是正確默認值的情況下很有用。

在所有情況下,使用默認值替換null都是有意義的。

在其他情況下,如果您確實想將值保留為空以表示沒有數據,例如說一個名為“配偶”的字段將對單身人士為空。 在這種情況下分配默認配偶將是錯誤的,並且可能不值得贊賞。 ISNULL()在這種情況下很有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM