函式計算格式 已經說明在 FineBI 中使用函式的計算組成以及基礎的計算語法,但有時使用者也會遇到書寫公式報錯的問題,可根據提示完成公式的正確書寫。
本文將詳細介紹操作符和表式的語法,幫助使用者瞭解 FineBI 的公式校驗方案,正確有效的寫出需要的函式。
日期+數值則為日期欄位
如果全是數值則為數值欄位
不合法提示:「不支援日期+日期操作」,如下圖所示:
注:不支援數值欄位-日期欄位。
日期型別-數值型別 傳回結果為日期型別
其餘傳回結果為數值型別
不合法提示:
「不支援數值-日期操作」,如下圖所示:
其他非法的減法:「文字不能作為減數或被減數」,如下圖所示:
不合法提示:「操作符兩端必須為數值型別」,如下圖所示:
* 操作符表示數值相乘
% 操作符傳回除法運算的餘數
^ 乘方計算數位的指定次冪
兩個數值型別參數
數值型別
>(大於)
<(小於)
>=(大於或等於)
<=(小於或等於)
不合法提示:「操作符兩端欄位型別必須相同」,如下圖所示:
!= (不等於)
兩個相同型別參數
或者參數中有 null
布林型別
FineBI 的函式表式寫法參見:表式語法
當使用者使用以下書寫方式時,會出現報錯提示。
例如使用者書寫如下的表式:ABS(合同金額)+,則會報錯「語法錯誤,缺少標示符」:
例如需要新增一欄,該列全部指派為 1,此時輸入 "1,由於缺少一半英文雙引號,會出現如下報錯「字元錯誤」:
即其他的語法錯誤。
LEN
數值
CHAR
文字
CODE
CODE不符合 (文字) 的參數要求
REPLACE
STARTWITH
bool
ENDWITH
ENDWITH不符合 (任意型別,任意型別) 的參數要求
EXACT
EXACT不符合 (任意型別,任意型別) 的參數要求
INDEXOF
REPEAT
REPEAT不符合 (任意型別,數值) 的參數要求
LEFT
RIGHT
RIGHT不符合(任意型別) 或 (任意型別,數值) 的參數要求
TODOUBLE
TOINTEGER
TOINTEGER不符合 (任意型別) 的參數要求
LOWER
TRIM
TRIM不符合 (文字) 的參數要求
UPPER
UPPER不符合 (文字) 的參數要求
CONCATENATE
MID
REGEXP
BOOL
實時資料:REGEXP不符合 (文字,文字) 的參數要求
抽取資料:REGEXP:不符合(文字,文字) 或 (文字,文字,數值) 的參數要求
FORMAT
實時資料:FORMAT不符合 (日期,文字) 的參數要求
抽取資料:FORMAT不符合 (任意型別,文字) 的參數要求
FIND
不符合(日期/文字,數值)的參數要求
不符合(日期/文字)的參數要求
實時資料:不符合(日期/文字)的參數要求
抽取資料:不符合(任意型別...)的參數要
#函式名#不符合() 或 (日期/正文)的參數要求
實時資料:TIME:不符合(數值,數值,數值)的參數要求
抽取資料:TIME不符合(數值/文字,數值/文字,數值/文字)的參數要
TODATE
實時資料:TODATE不符合(任意型別) 或 (文字,文字)的參數要求
抽取資料:TODATE:不符合(數值/日期/文字) 或 (文字,文字)或(文字,文字,文字)的參數要
注:實時資料不支援該函式。
實時資料:不符合(數值)的參數要求
抽取資料:不符合(文字/數值)的參數要求
#函式名#不符合(數值)的參數要求
實時資料:不符合所有參數為相同型別的要求
抽取資料:不符合(數值...)的參數要求
#函式名#不符合(數值,數值)的參數要求
IF:不符合(布爾/數值,參數,參數)的參數要求
注:實時資料中表式的結果型別必須相同。
抽取資料:SWITCH:的參數至少3個
實時資料:SWITCH:表式的結果型別必須相同
SWITCH:的參數至少3個
實時資料:ISNULL不符合(任意型別)的參數要求
抽取資料:ISNULL:不符合(任意型別...) 的參數要求
#函式名#不符合 (數值) 的參數要求
PERCENTILE_AGG
注:僅實時資料支援。
PERCENTILE_AGG不符合 (數值,數值) 的參數要求
PERCENTILE_AGG第二個常數數值型別參數必須在0到1之
同參數型別
#函式名#不符合 (任意型別) 的參數要求
APPROX_COUNT_AGG
聚合函式組合場景下的不合法報錯:
錯誤代碼
含義
61500002
61500003
61500004
SAME_PERIOD
SAME_PERIOD不符合(數值) 或 (數值,正文) 的參數要求
SAME_PERIOD第二個常數正文型別參數必須為"Y","M","W"(不區分大小寫)
ACC_SUM不符合(數值) 或 (數值,數值) 的參數要求
ACC_SUM第二個常數數值型別參數必須為0,1
PERIOD_ANLS第二個常數正文型別參數必須為Y","M","W"(不區分大小寫)
PERIOD_TD不符合(數值) 或 (數值,文字) 的參數要求
PERIOD_TD第二個常數正文型別參數必須為Y","M","W"(不區分大小寫)
RANK_ANLS不符合(數值) 或 (數值,數值) 或 (數值,文字) 或 (數值,數值,正文)的參數要求
RANK_ANLS第二個常數數值型別參數必須為0,1
RANK_ANLS第三個常數正文型別參數必須為"asc","desc"(不區分大小寫)
TOTAL不符合(數值) 或 (數值,數值) 或 (數值,正文) 或 (數值,數值,正文)的參數要求
TOTAL第二個數值型別參數必須為0,1
TOTAL第三個常數正文型別參數必須為"sum","avg","min","max"(不區分大小寫)
通用報錯提示:
舉例
FIXED
#函式名#必須包含參數
#函式名#維度不能為聚合函式
#函式名#最後一個參數必須是聚合函式