Q1:公式中的欄位不能手動輸入嗎?
A:不能,欄位需要在左側的欄位選擇框中選擇,不能手動輸入。詳情參見:函式計算格式
Q2:BI 裏的「不等於」怎麼表示?
A:!= 詳細可參見:計算運算子和優先
Q3:公式裏怎麼書寫正文表式?
A:需要在正文表式左右需要增加「英文輸入法的雙引號」,詳情參見:函式計算格式
Q4:公式裏的大小寫有什麼規範?
A:逗號、括號等標點符號都需要使用「英文輸入法」。
Q5:為什麼公式報錯「不合法」?
Q6:如果一個公式裏面,一個欄位用了聚合函式,其他欄位也要統一用聚合函式嗎?
A:是的。
Q7:組件標題可以寫公式嗎?
A:不可以。
Q8:怎麼在 BI 裏進行條件判斷呢?
A:IF 函式和 OR、AND 函式巢使用/多個IF函式巢使用。
Q9:" " 和 null 有什麼差別?
A:抽取資料不區分,實時資料則取決於各個資料庫型別。為確定公式準確,可以寫成例如:IF(戶型=" "||戶型=null,建築性質,戶型)的格式。
Q10:|| 和 && 怎么使用?
例如公式:IF(戶型=" "||戶型=null,建築性質,戶型)與IF(OR(戶型=" ",戶型=null),建築性質,戶型)相同,都表示如果戶型為空或者空格,那麼傳回「建築性質」欄位對應的資料,否則傳回「戶型」欄位對應的資料。
Q11:如果有分母為 0 的情況,要使用除法做計算,需要怎麼寫公式?分母為 0 可以直接在BI中公式修正嗎?
A:
使用 IF 函式,若被除數為 0 ,則直接匯出 0,否則匯出相除計算後的結果。
使用 IF 函式,若數值為空,則顯示為 0,否則匯出相除計算後的結果。
使用 SIGN 函式,若資料為正數=1,則匯出該資料,否則匯出 0。
Q12:正文欄位不為空如何用公式表達?
A:len(欄位)!=0
Q13:為什麼「准入時間<"2020-12-01"」公式不合法?
A:一個是時間欄位一個是正文欄位,需要將正文欄位轉化成時間欄位,使用 date 函式:准入時間>DATE(2020,12,1)
Q14:為什麼AVG_AGG(記錄數)這樣公式不合法?
A:記錄數實際上就是 COUNT_AGG(資料表條數),已經是聚合函式了,聚合函式不能和AVG_AGG()聚合函式巢使用。
Q15:為什麼「開始日期<NOW()<結束日期」這個寫法不合法?
A:需要使用邏輯與 AND() 或者
Q16:如何計算兩個時間點之間的時間差?
A:DATEDIF 或者 DATESUBDATE 函式。
Q17:為什麼使用明細過濾後使用欄位建立公式顯示不合法呢?
Q18:為什麼 IF 函式和聚合函式一起巢使用公式不合法?
A:使用 IF 函式對聚合函式進行二次計算,當公式中含有非聚合欄位時,公式不合法。詳情參見:公式不合法原因排查 3.2節。
Q19:在進行相除計算時,什麼時候用聚合函式 SUM_AGG,什麼時候直接相除?
A:SUM_AGG 一般用於 明細過濾 後求和,求和後相除。不使用聚合函式得出的相除結果是對明細資料做除法。詳情參見:SUM_AGG