Delen via


bitmap_count-functie

Van toepassing op: vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 13.3 LTS en hoger

Retourneert het aantal bits dat is ingesteld in een BINARY tekenreeks die een bitmap vertegenwoordigt. Deze functie wordt doorgaans gebruikt om afzonderlijke waarden te tellen in combinatie met de functies bitmap_bucket_number() en bitmap_construct_agg().

Als u bits in een BIGINT expressie wilt tellen, gebruikt u bit_count functie.

Syntaxis

bitmap_count(expr)

Argumenten

Retouren

Een BIGINT dat is >=0.

Voorbeelden

> 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