COUNT_DISTINCT

COUNT_DISTINCT 函式會計算欄位中不重複項目的數量。

語法

COUNT_DISTINCT(X)

參數

  • X:包含要計算項目數量的欄位或運算式。

COUNT_DISTINCT 函式的運作方式

COUNT_DISTINCT 函式會採用一個參數,可以是維度名稱或不會產生匯總結果的運算式。COUNT_DISTINCT 會傳回該欄位或運算式中的不重複項目總數。

如要計算所有項目 (包括重複項目),請使用 COUNT

範例

Example formula Output
COUNT_DISTINCT(user_id) 22,854,921
COUNT_DISTINCT(order_id) 497,091,812

COUNT_DISTINCT 的限制

使用 COUNT_DISTINCT 函式時,請注意下列事項:

COUNT_DISTINCT 可處理未經匯總的資料

您無法將這項函式套用至指標,包括「彙整」類型為「自動」的欄位,或是其他彙整函式產生的運算式。舉例來說,Google Analytics 資料來源中的 COUNT_DISTINCT(Sessions) 等公式會產生錯誤,因為 Sessions 是「自動」彙整欄位。

考慮使用 APPROX_COUNT_DISTINCT 處理 BigQuery 資料

為避免使用 BigQuery 資料來源時可能產生較高的查詢費用,建議使用 APPROX_COUNT_DISTINCT

函式下推的變數結果

為獲得最佳效能,數據分析 會盡可能將 COUNT_DISTINCT 的計算作業委派 (或「下推」) 給基礎資料來源。由於實際計數是由連結的系統執行,而非數據分析工具,因此結果可能會因該系統實作不重複計數的方式而異。

舉例來說,可能導致不重複計數差異的因素包括:

  • SQL 資料庫:不同的 SQL 方言可能會以獨特方式處理大小寫區分、尾端空格比較或空值計數。
  • 以檔案為基礎的來源:如果是檔案連線器 (例如 CSV 檔案),結果會取決於目標網站的剖析行為和內部引擎作業。
  • 軟體即服務 (SaaS) API:雲端服務和軟體即服務連接器會受到 API 功能限制,因此可能傳回概略計數或套用特定篩選邏輯。