BigQuery lanceert DISTINCT pipe operator voor unieke rijen in queries

BigQuery heeft de DISTINCT pipe operator geïntroduceerd, die nu algemeen beschikbaar (GA) is. Met deze operator kun je unieke rijen selecteren uit een tabel binnen pipe-syntaxqueries. De operator retourneert unieke rijen op basis van alle zichtbare kolommen, negeert pseudo-kolommen en behoudt de tabelaliassen uit de invoer.

Belangrijkste kenmerken van de DISTINCT pipe operator

  • Kan overal in de pipe-syntax worden toegepast, in tegenstelling tot traditionele SELECT DISTINCT of UNION DISTINCT, die beperkt zijn tot specifieke clausules.
  • Berekent unieke rijen op basis van alle zichtbare kolommen.
  • Negeert pseudo-kolommen bij het berekenen van unieke rijen en sluit deze uit van de output.
  • Vergelijkbaar met |> SELECT DISTINCT *, maar breidt geen value table-velden uit en behoudt tabelaliassen.

Voorbeeldgebruik
Een query met meerdere rijen, inclusief duplicaten, gebruikt de |> DISTINCT-operator om unieke rijen te filteren en past vervolgens een WHERE-clausule toe om rijen te selecteren waar de verkoop groter dan of gelijk aan 3 is:

(
  SELECT 'apples' AS item, 2 AS sales
  UNION ALL
  SELECT 'bananas' AS item, 5 AS sales
  UNION ALL
  SELECT 'bananas' AS item, 5 AS sales
  UNION ALL
  SELECT 'carrots' AS item, 8 AS sales
)
|> DISTINCT
|> WHERE sales >= 3;

Het resultaat geeft unieke rijen terug voor “bananas” en “carrots” met verkoopwaarden van respectievelijk 5 en 8.