1. 概述
1.1 版本
FineBI 版本 |
---|
6.0.9 |
1.2 功能簡介
屬於,判斷表式 exp 的結果是否屬於 para1,para2,para3,... 建構的集合裏,屬於為1,不屬於為0。
文法 | IN(exp,para1,para2,para3,...) | 判斷表式exp的結果是否屬於para1,para2,para3,...建構的集合裏 |
---|---|---|
參數1 | exp | 任意型別的任意表式(不能為NULL) |
參數2 | para1,para2,para3,... | 任意型別的常數/常數表式/組件參數 |
2. 注意事項
1)IN函式中所有參數的型別需保持一致。
2)當 IN 函數的 參數1 爲組件參數,且參數被賦予了多個值時(如被組件參數被過濾組件綁定,設置了多個選項)。
組件報錯:IN的第一個參數不能爲多值參數。如下圖所示:
3. 範例
找出合同事實表內長期訂單的合同金額。
1)建立分析主題,並新增「內建DEMO」中的「合同事實表」。並使用該表製作組件,「新增計算欄位」合同型別是否為長期訂單。
當合同型別值為「長期協定訂單、長期協定」時,為長期訂單。輸入公式:IN(合同型別,"長期協定訂單","長期協定")
注:公式中合同型別並非手動輸入,而是在左側欄位中按選擇。
在組件中新增欄位,我們可以看到長期訂單的值為 1 ,其餘為 0 。如下圖所示:
2)求長期訂單的合同金額。新增計算欄位,並新增公式:DEF_ADD(SUM_AGG(合同金額),[],合同型別是否是長期訂單) 。
我們在組件中查看資料,只有長期訂單才會顯示合同金額。如下圖所示:
用指標卡顯示如下圖所示:
3)更多範例:
公式 | 结果 | 備註 |
---|---|---|
IN(1,1,2,3) | 1 | - |
IN(城市,"北京","上海","廣州") | 城市欄位中屬於北京、上海、廣州的行=1,其餘行=0 | - |
DEF(SUM(銷售額),[],[IN(城市,$組件參數)]) | 計算屬於組件參數值的城市的銷售額總和 |