bitmap_and_agg aggregatfunktion

Gäller för:markerad som ja Databricks Runtime 18.0 och senare

Returnerar bitvis AND för alla BINARY indatavärden i gruppen.

Funktionen används ofta för att räkna antalet distinkta integraltal i kombination med funktionerna bitmap_bucket_number(), bitmap_count(), bitmap_bit_position()och bitmap_construct_agg().

Om du vill aggregera bitmappar i form av integrerad numerisk användning använder du aggregeringsfunktionen bit_and(). Om du vill aggregera bitpositioner i en BINARY bitmapp använder du bitmap_construct_agg().

Syntax

bitmap_and_agg(expr) [FILTER ( WHERE cond ) ]

Den här funktionen kan också anropas som en fönsterfunktion med hjälp av OVER -satsen.

Arguments

  • expr: En BINARY längd <= 4096 som representerar en bitmapp. Azure Databricks trunkerar längre värden till 4096.
  • cond: Ett valfritt booleskt uttryck som filtrerar de rader som används för aggregering.

Retur

En BINARY med längd 4096.

Examples

> SELECT hex(trim(TRAILING X'00' FROM bitmap_and_agg(val))) FROM VALUES(x'F0'), (x'70'), (x'30') AS T(val);
 30