使用者需要經常使用函式進行計算,因此正確有效的函式寫法就顯得非常重要。
本文介紹 FineBI 函式的組成和正確寫法格式。
FineBI 函式計算由四個內容組成:
例如,假設有以下計算:
IF(合同金額>2000,"大訂單","小訂單")
對應計算內容如下所示:
合同金額
注:欄位必須在左側欄位框中選擇,不可手動輸入。
字串正文:"大訂單"、"小訂單"
數字正文:2000
注:並非所有計算都需要包含所有四個組件。例如,計算可能不包含正文表式,例如計算SUM_AGG(合同金額)/SUM_AGG(購買數量) ,該計算只包含函式 SUM_AGG、除法運算子 (/) 以及欄位「合同金額」和「購買數量」。
此外計算還可包含:
過濾組件作為參數參與計算 - 可插入計算中以取代常數值的佔位變數。詳情參見:過濾組件作為參數參與計算
有關如何使用計算中的每個組件以及設定其格式的詳細資訊,請參見下面的部分。
常用函式文法詳情參見:常用函式文法FAQ
函式文法詳情查看對應函式:
數學和三角函式 、正文函式 、日期函式 、邏輯函式 、其他函式
聚合函式 、快速計算函式 僅在新增計算欄位時可用
數字正文寫為數字。
字串正文和日期正文帶有引號。
布爾正文寫為 true 或 false。
Null 正文寫為 null。
2000
"大訂單"、“2020-07-15”
true 或者 false
null
過濾組件值變成一個參數值,過濾組件的名稱即為參數名
寫法同「欄位」一致
在 FineBI 中,函式是計算的主要組成部分。
1)函式在 FineBI 計算中顯示為藍色,每個函式都有特定的文法。
例如:在 FineBI 中建立儀表板,新增計算欄位,在開啟的計算編輯器中,按函式位置的圖示,將出現一個「函式列表」。緊接着是「欄位選擇位置」,從函式列表中選擇函式時,最右側的部分將更新,包含有關該函式的必需文法 (1) 和說明 (2) 的資訊,並帶有一個或多個範例 (3),如下圖所示:
2)可以在計算中使用多個函式。例如:IF(SIGN(利潤)=1,利潤,0)
該計算中有兩個函式:IF、SIGN。
函式包括在另一個函式中(即巢),上面範例就是這種情況。在這種情況下,將在計算 IF 函式之前先計算「利潤」的 SIGN 函式,因為後者在括號內部。
可以在計算中插入欄位。函式的文法通常會指明應在計算中的何處插入欄位。例如:SUM_AGG(array)。
例如:如果要計算平均合同單價,則計算將使用資料源中的「合同金額」和「購買數量」欄位,輸入公式:SUM_AGG(合同金額)/SUM_AGG(購買數量),在左側的欄位選擇區域點選選擇需要的欄位,如下圖所示:
注:欄位在 FineBI 計算中顯示為淺藍色底。
若要建立計算,需要了解 FineBI 支援的運算子。運算子在 FineBI 計算中顯示為黑色。
詳情參見:計算運算子和優先
此部分描述在 FineBI 計算中使用正文表式的正確文法。
正文表式「按原樣」表示常數值。使用函式時,有時需要使用正文表式表示數字、字串、日期等。正文表式在 FineBI 計算中顯示為黑灰色。
詳情參見本文 3.1.節
詳情參見:運算子和不合法報錯、常用函式文法FAQ