Funktionen bitmap_bucket_number

Gäller för:markerad ja Databricks SQL markerad ja Databricks Runtime 13.3 LTS och senare

Returnerar bitmappens bucketnummer för ett angivet BIGINT tal.

Den här funktionen används i kombination med funktionen bitmap_count() för att räkna distinkta integraltal.

I kombination med funktionen bitmap_bit_position() identifierar den ett tal BIGINT unikt.

Syntax

bitmap_bucket_number(expr)

Argument

  • expr: Ett BIGINT uttryck.

Returer

En BIGINT.

Om expr är >0 resultatet matchar: ((expr - 1) DIV 32768) + 1. Om expr är <= 0 resultatet matchar: expr DIV 32768.

Exempel

> SELECT bitmap_bucket_number(1), bitmap_bit_position(1);
 1  0

> SELECT bitmap_bucket_number(32768), bitmap_bit_position(32768);
 1  32767

> SELECT bitmap_bucket_number(32769), bitmap_bit_position(32769);
 2  0

> SELECT bitmap_bucket_number(0), bitmap_bit_position(0);
 0  0

> SELECT bitmap_bucket_number(-32767), bitmap_bit_position(-32767);
 0  32767

> SELECT bitmap_bucket_number(-32768), bitmap_bit_position(-32768);
 -1  0