共用方式為


什麼是計算量值?

本文說明計算量值,以及如何用來執行計算,而不需修改數據集查詢。

概述

在 AI/BI 儀錶板中,視覺化是依據 [數據] 標籤中定義的數據集進行的。計算量值提供了一種建立以及可視化新數據欄位的方法,而不需改變原始數據集。 例如,在包含專案、區域、價格和成本數據的銷售數據集中,您可能想要計算和可視化每個區域的獲利率。

下表顯示啟動資料集的範例:

項目 地區 價格 成本
蘋果 美國 30 15
蘋果 加拿大 20 10
橘子 美國 20 15
橘子 加拿大 15 10

在沒有計算過的方式情況下,新增利潤率將需要建立一個新增額外利潤欄位的新資料集。 下表顯示產生的資料集:

地區 邊緣
美國 0.40
加拿大 0.43

雖然此方法可運作,但新數據集是靜態的,而且可能只支援單一視覺效果。 套用至原始數據集的篩選條件不會影響新數據集,而不需要額外的手動調整。 您可以改用計算量值,以保留原始數據集,並動態定義公式來計算獲利率。

下列範例公式會根據匯總價格和成本值來計算獲利率:

(SUM(Price) - SUM(Cost)) / SUM(Price)

產生的導出量值可用於儀錶板視覺效果。 如果使用畫布上的小工具將篩選套用至數據集,則使用匯出量值的圖表會自動更新,以反映篩選的數據。

建立計算量值

此範例會根據 samples.nyctaxi.trips 數據集建立導出量值。 它假設使用者具備操作 AI/BI 儀錶板的一般知識。 如果您不熟悉如何撰寫 AI/BI 儀錶板,請參閱 建立儀錶板,以了解如何開始。

  1. 從 [數據] 索引標籤,使用下列語句建立數據集:
SELECT * FROM samples.nyctaxi.trips
  1. 將數據集重新命名 Taxicab 資料

  2. 點選 計算度量

    計算量值按鈕會在結果面板的右上角突出顯示。

  3. [新建計算量值] 面板會在畫面右側開啟。 在 [名稱] 欄位 [] 中,輸入 [每英里的成本] []。

  4. (選擇性)在 [描述] 文字欄位中,輸入「使用票價金額和車程距離來計算每英里的成本」。

  5. 在 [表達式] 欄位中,輸入 SUM(fare_amount) / SUM(trip_distance)

  6. 點擊 建立

在計算量值編輯器中已經填入了依據指示的數值。

按兩下結果面板中的 [架構] 索引標籤,以檢視導出量值及其相關聯的批註。 計算量值列在 [量值] 區段中,並以 計算量值圖示 fx 標示。 當您在視覺化中設定 GROUP BY 時,計算量度所關聯的值會被動態計算。 您無法在結果資料表中看到值。

計算量值會出現在架構索引標籤中。

在視覺化中使用計算的量值

您可以在視覺效果中使用先前建立的 每英里成本 量值。

  1. 點擊 [Canvas]。 然後,將新的視覺效果小工具放在畫布上。
  2. 使用視覺效果組態面板來編輯設定,如下所示:
    • 數據集: 計程車數據
    • 視覺效果: 柱狀圖
    • X 軸:
      • 欄位: dropoff_zip
      • 縮放類型: 類別型
      • 轉換:
    • Y 軸:
      • 每英里的成本

備註

匯出量值無法與數據表視覺效果搭配使用。

下圖顯示圖表。

顯示每英里成本與終點郵遞區號的條形圖。

包含計算量值的視覺效果會根據套用的篩選條件動態更新。 例如,如果您將 pickup_zip 篩選新增至畫布並選取篩選值,視覺效果會更新,只針對源自所選篩選值的車程顯示每英里的成本計量。 產生的條形圖會據以反映篩選的數據。

編輯計算量值

若要編輯量值:

  1. 按一下 [資料] 索引標籤,然後按一下與您要編輯的量值相關的資料集。
  2. 按兩下結果面板中的 [架構] 索引標籤。
  3. [措施] 區段會出現在欄位清單下方。 按兩下您要編輯之量值右邊的 Kebab選單 kebab選單。 然後,點擊 編輯
  4. [編輯匯出量值] 面板中,更新您要編輯的文字欄位。 然後按下 更新

刪除計算的度量值

若要刪除量值:

  1. 按一下 [資料] 索引標籤,然後按一下與您要編輯的量值相關的資料集。
  2. 按兩下結果面板中的 [架構] 索引標籤。
  3. [措施] 區段會出現在欄位清單下方。 按兩下您要編輯之量值右邊的 Kebab選單 kebab選單。 然後按下 [刪除]
  4. 在出現的 [刪除] 對話框中,按一下 [刪除]

局限性

若要使用計算量值,下列條件必須成立:

  • SQL 運算式的結果必須匯總。
  • 表達式中使用的數據行必須屬於相同的數據集。
  • 表達式不能包含外部數據表或數據源的呼叫。

支援的功能

以下表格列出支援的函式。 嘗試使用不支援的函式會導致錯誤。

聚合函數

所有計算量值都必須匯總。 支援下列匯總作業:

集合體 描述
avg(expr)mean(expr) 傳回欄或表示式中的計算平均值
計數」 傳回群組中的資料列數目
計數(DISTINCT expr) 傳回群組中不重複列的數目
求和(expr) 傳回數據行或表示式中的值總計
max(expr) 傳回數據行或表示式中的最大值
最小值(expr) 傳回數據行或表示式中的最小值
百分位數(expr,percentage,[frequency]) 傳回群組中在指定百分比處的 expr 的確切百分位數值
first(expr [,ignoreNull]) 傳回群組 expr 的第一個值
last(expr [,ignoreNull]) 傳回群組 expr 的最後一個值

算術運算

您可以結合表示式與下列算術運算:

表達 描述
expr1 + expr2 傳回 expr1 和 expr2 的總和。
expr1 - expr2 expr1減去 expr2 時,傳回差異。
乘數 * 多重和 傳回兩個表達式的乘積。
dividend / divisor 傳回被除數除以除數的結果。
- expr 傳回表達式的否定值。
+ expr 傳回表達式的值。
try_add 加入兩個值。 如果發生錯誤,則會傳回 NULL
try_subtract(expr1, expr2) expr1減去 expr2。 如果發生錯誤,則會傳回 NULL
try_multiply(multiplier, multiplicand) 將兩個數位相乘。 如果發生錯誤,則會傳回 NULL
try_divide(除數、除數) 將被除數除以除數。 如果發生錯誤,則會傳回 NULL