approx_count_distinctFungsi agregat

Berlaku untuk:centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime

Menghasilkan perkiraan jumlah bilangan berbeda dalam grup expr.

Implementasi menggunakan versi padat algoritma HyperLogLog++ (HLL++), status algoritma estimasi kardinalitas seni.

Hasilnya akurat dalam nilai default 5%, yang berasal dari nilai simpangalan standar relatif maksimum, meskipun ini dapat dikonfigurasi dengan relativeSD parameter seperti yang disebutkan di bawah ini.

Sintaks

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

Fungsi ini juga dapat dipanggil sebagai fungsi jendela menggunakan klausa OVER.

Argumen

  • expr: Dapat dari jenis apa pun yang kesetaraan didefinisikan.
  • relativeSDMendefinisikan deviasi standar relatif maksimum yang diizinkan.
  • cond: Ekspresi boolean opsional yang memfilter baris yang digunakan untuk agregasi.

Mengembalikan

BIGINT.

Contoh

> 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