Fonction bitmap_count
S’applique à : Databricks SQL Databricks Runtime 13.3 LTS et versions ultérieures
Renvoie le nombre de bits définis dans une chaîne BINARY
représentant un bitmap.
Cette fonction est généralement utilisée pour compter des valeurs distinctes en combinaison avec les fonctions bitmap_bucket_number() et bitmap_construct_agg().
Pour compter les bits dans une expression BIGINT
, utilisez la fonction bit_count.
Syntaxe
bitmap_count(expr)
Arguments
expr
: Une expressionBINARY
, généralement produite par bitmap_construct_agg().
Retours
Un BIGINT
qui est >=0
.
Exemples
> SELECT bitmap_count(X'00');
0
> SELECT bitmap_count(X'');
0
> SELECT bitmap_count(X'7700CC');
10
-- Count the number of distinct values
> SELECT sum(num_distinct) AS num_distinct
FROM (SELECT bitmap_bucket_number(val),
bitmap_count(bitmap_construct_agg(bitmap_bit_position(val)))
FROM VALUES(1), (2), (1), (-1), (5), (0), (5) AS t(val)
GROUP BY ALL) AS distinct_vals_by_bucket(bucket, num_distinct)
5