Freigeben über


bitmap_count-Funktion

Gilt für:Häkchen gesetzt ja Databricks SQL Häkchen gesetzt ja Databricks Runtime 13.3 LTS und höher

Gibt die Anzahl der Bits set in einer BINARY Zeichenfolge zurück, die eine Bitmap darstellt. Diese Funktion wird in der Regel verwendet, um einen eindeutigen Wert in Kombination mit den Funktionen bitmap_bucket_number() und bitmap_construct_agg() zu zählen.

Um Bits in einem BIGINT-Ausdruck zu zählen, verwenden Sie die Funktion „bit_count“.

Syntax

bitmap_count(expr)

Argumente

Gibt zurück

Ein BIGINT, der >=0 ist.

Beispiele

> 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