Aracılığıyla paylaş


approx_count_distinct toplama işlevi

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime

Tahmini grup içindeki expr'deki farklı değerlerin sayısını döndürür.

Uygulama, en son kardinalite tahmin algoritması olan HyperLogLog++ (HLL++) algoritmasının yoğun sürümünü kullanır.

Sonuçlar, en yüksek göreli standart sapma değerinden türetilen varsayılan %5 değeri içinde doğrudur, ancak bu değer aşağıda belirtildiği gibi parametresiyle relativeSD yapılandırılabilir.

Sözdizimi

approx_count_distinct(expr[, relativeSD]) [FILTER ( WHERE cond ) ]

Bu işlev, yan tümcesi kullanılarak bir pencere işlevi olarak şeklinde de çağrılabilir.

Tartışmalar

  • expr: Denkliğin tanımlandığı herhangi bir türde olabilir.
  • relativeSD: İzin verilen en yüksek göreli standart sapması tanımlar.
  • cond: İsteğe bağlı bir boole ifadesi, tümleştirme için kullanılan satırları filtreler.

İadeler

BIGINT.

Örnekler

> SELECT approx_count_distinct(col1) FROM VALUES (1), (1), (2), (2), (3) tab(col1);
 3

> SELECT approx_count_distinct(col1) FILTER(WHERE col2 = 10)
    FROM VALUES (1, 10), (1, 10), (2, 10), (2, 10), (3, 10), (1, 12) AS tab(col1, col2);
 3