3
A
回答
4
COUNT DISTINCT估計的準確性取決於實際值的實際數量。如果它很小 - 算法非常精確(對於小值,它通常會返回確切值),但是更大數量的不同值 - 它可能變得不太準確。請注意,該COUNT(DISTINCT)採用第二個參數,它交易內存的準確性,即它將使用更多的內存,但更準確。例如:
SELECT COUNT(DISTINCT x, 100000) FROM T
如果整數值小於100,000,將返回相當準確的結果。
COUNT不同估計的精確算法會有所不同,但不同的變化會有類似的誤差估計 - 約1/SQRT(N),其中N是第二個參數。默認值是1000,相當於大約3%的錯誤。如果碰到10000,則會有大約1%的錯誤。
+0
估計錯誤實際上就是我所要求的 - 我們想要了解錯誤會有多大,比如<= 1%? – Fardream
+0
我更新了答案以給出估計 –
相關問題
- 1. DISTINCT COUNT返回SQL錯誤
- 2. SQL語法錯誤(COUNT(DISTINCT ..))
- 3. BigQuery count distinct ColX不等於ColX組的計數
- 4. distinct count(*)
- 5. pyodbc parameterised sql result count distinct distinct
- 6. MySQL COUNT DISTINCT
- 7. tsql distinct count subquery2
- 8. mysql count distinct value
- 9. Laravel Distinct Count
- 10. SQL count(*)and distinct
- 11. sql distinct + count
- 12. COUNT DISTINCT MS ACCESS
- 13. Count()return total instead distinct count
- 14. 如何計算SUM(DISTINCT field1) - COUNT(field2)?
- 15. 導軌COUNT SELECT DISTINCT
- 16. Drupal SQL「Select count distinct」
- 17. SQLite的COUNT JOIN DISTINCT
- 18. MySQL order by COUNT DISTINCT
- 19. MySQL查詢DISTINCT,COUNT
- 20. sqlite count of distinct occurences
- 21. COUNT DISTINCT與GROUP BY
- 22. Sql Select Distinct Row Count
- 23. 爲什麼mysql select count(distinct user_id)返回錯誤的數字?
- 24. 在錯誤的分組上執行COUNT DISTINCT的子查詢
- 25. 使用SELECT DISTINCT COUNT獲取數據庫中的錯誤金額
- 26. COUNT DISTINCT和GROUP BY在同一查詢錯誤
- 27. Mysql的DISTINCT和COUNT查詢
- 28. COUNT和DISTINCT無組通過
- 29. COUNT(DISTINCT())返回假值
- 30. COUNT(DISTINCT(CASE時(「A」,「B」)
也許你可以比較它以計數(唯一())多次。如果數據太大以致count(unique())甚至不能工作,那麼這種方法可能不起作用。我認爲更多的是經驗理論。 – andrewm4894
您也可以使用EXACT_COUNT_DISTINCT。 https://cloud.google.com/bigquery/query-reference#exact_count_distinct – YABADABADOU