共用方式為


hll_if() (聚合函數)

適用於:✅Microsoft網狀架構✅✅✅

計算述詞評估為 dcount的記錄中結果true

閱讀基礎演算法 (HyperLog Log) 和估計精確度

注意

此函式會與 summarize 運算子搭配使用。

語法

hll_if ( expr述詞 [,精確度])

深入瞭解 語法慣例

參數

姓名 類型​​ 必要 描述
expr string ✔️ 用於匯總計算的表達式。
predicate string ✔️ Expr,用來篩選要加入至 的中繼結果的dcount記錄。
準確性 int 控制速度與精確度之間平衡的值。 如果未指定,則預設值為 1。 如需支援的值,請參閱 估計精確度

傳回

傳回述詞評估為 之 Exprtrue結果。

注意

  • hll()、hll_if() 和 hll_merge() 的結果可以儲存和稍後擷取。 例如,您可能想要建立每日唯一的使用者摘要,然後可用來計算每周計數。 不過,這些結果的精確二進位表示法可能會隨著時間而變更。 不保證這些函式會針對相同的輸入產生相同的結果,因此我們不建議您依賴它們。
  • 使用 hll_merge 函式來合併多個 hll 中繼結果。 僅適用於 hll 輸出。
  • 使用 dcount_hll,從 hllhll_mergehll_if 聚合函數計算相異計數。

範例

下列查詢會產生愛荷華州和堪薩斯州唯一的洪水事件來源數目。 它會使用 hll_if() 函式來只顯示洪水事件。

StormEvents
| where State in ("IOWA", "KANSAS")
| summarize hll_flood = hll_if(Source, EventType == "Flood") by State
| project State, SourcesOfFloodEvents = dcount_hll(hll_flood)

輸出

州/省 SourcesOfFloodEvents
堪薩斯州 11
愛荷華州 7

估計的正確性

準確度 速度 錯誤 ≤
0 最快 1.6
1 平衡 0.8
2 緩慢 0.4
3 緩慢 0.28
4 0.2