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 功能限制,因此可能傳回概略計數或套用特定篩選邏輯。