in - Amazon QuickSight

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

in

in 會評估表達式是否存在於某個常值清單中。如果清單包含相應表達式,則 in 傳回 true,否則傳回 false。in 對於字串類型輸入區分大小寫。

in 接受兩種常值清單,一種是手動輸入清單,另一種是多值參數

語法

使用手動輸入的清單:

in(expression, [literal-1, ...])

使用多值參數:

in(expression, $multivalue_parameter)

引數

運算式

要與常值清單中的元素進行比較的表達式。它可以是欄位名稱 (如 address)、常值 (如 "Unknown")、單值參數或對另一個純量函數的呼叫 (前提是該函數不是彙總函數或表計算)。

literal list

(必要) 這可以是手動輸入的清單或多值參數。此引數最多接受 5,000 個元素。但是,在直接查詢第三方資料來源 (例如 Oracle 或 Teradata) 時,限制可能會更小。

  • 手動輸入清單:包含要與表達式進行比較的一個或多個常值的清單。此清單應括在方括號內。所有要比較的常值必須具有與表達式相同的資料類型。

  • 多值參數:作為常值清單傳入的預定義多值參數。此多值參數必須具有與表達式相同的資料類型。

傳回類型

布林值:TRUE/FALSE

靜態清單範例

以下範例針對某個字串清單中的值評估 origin_state_name 欄位。比較字串類型輸入時,in 僅支援區分大小寫的比較。

in(origin_state_name,["Georgia", "Ohio", "Texas"])

以下是指定欄位的值。

"Washington" "ohio" "Texas"

對於這些欄位值,會傳回以下值。

false false true

第三個傳回值為 true,因為只有 "Texas" 是包含的值之一。

以下範例針對某個字串清單中的值評估 fl_date 欄位。為了與類型相符,使用 toString 將日期類型轉換為字串類型。

in(toString(fl_date),["2015-05-14","2015-05-15","2015-05-16"])
函數範例結果的影像 (以資料表形式顯示)。

在表達式參數支持文字和NULL值與列表中的文字進行比較。以下兩個例子都會生成一個新的TRUE值列。

in("Washington",["Washington","Ohio"])
in(NULL,[NULL,"Ohio"])

多值參數的範例

假設某個作者建立了一個多值參數,其中包含所有州名稱的清單。然後該作者新增了一個控制項,以允許讀者從清單中選取值。

接著,有讀者從參數的下拉式清單控制項中選取三個值 "Georgia"、"Ohio" 和 "Texas"。在這種情況下,以下表達式等效於第一個範例,其中三個州名稱作為常值清單傳遞以與 original_state_name 欄位進行比較。

in (origin_state_name, ${stateName MultivalueParameter})

ifelse 的範例

in 可以作為布林值以巢狀結構置於其他函數中。一個例子是,作者可以使用 inifelse 評估清單中的任何表達式,並傳回他們想要的值。以下範例評估航班的 dest_state_name 是否位於特定美國州清單中,並根據比較返回不同的州類別。

ifelse(in(dest_state_name,["Washington", "Oregon","California"]), "WestCoastUSState", "Other US State")
函數範例結果的影像 (以資料表形式顯示)。