SnowConvert AI – BigQuery – Operatoren

IS-Operatoren

IS-Operatoren geben TRUE oder FALSE für die Bedingung zurück, die sie testen. Sie geben nie NULL zurück, auch nicht für NULL-Eingaben. (BigQuery SQL-Sprachreferenz – IS-Operatoren)

BigQuery

Snowflake

X IS TRUE

NVL(X, FALSE)

X IS NOT TRUE

NVL(NOT X, TRUE)

X IS FALSE

NVL(NOT X, FALSE)

X IS NOT FALSE

NVL(X, TRUE)

X IS NULL

X IS NULL

X IS NOT NULL

X IS NOT NULL

X IS UNKNOWN

X IS NULL

X IS NOT UNKNOWN

X IS NOT NULL

UNNEST-Operator

Der UNNEST-Operator nimmt ein Array und gibt eine Tabelle mit einer Zeile für jedes Element im Array zurück. (BigQuery SQL-Sprachreferenz – UNNEST-Operator).

Dieser Operator wird mit der FLATTEN emuliert. Die VALUE- und INDEX-Spalten, die von der Funktion zurückgegeben werden, werden entsprechend umbenannt, sodass sie mit den UNNEST-Operator-Aliassen übereinstimmen.

BigQuery

Snowflake

UNNEST(arrayExpr)

FLATTEN(INPUT => arrayExpr) AS F0_(SEQ, KEY, PATH, INDEX, F0_, THIS)

UNNEST(arrayExpr) AS alias

FLATTEN(INPUT => arrayExpr) AS alias(SEQ, KEY, PATH, INDEX, alias, THIS)

UNNEST(arrayExpr) AS alias WITH OFFSET

FLATTEN(INPUT => arrayExpr) AS alias(SEQ, KEY, PATH, OFFSET, alias, THIS)

UNNEST(arrayExpr) AS alias WITH OFFSET AS offsetAlias

FLATTEN(INPUT => arrayExpr) AS alias(SEQ, KEY, PATH, offsetAlias, alias, THIS)

SELECT * mit UNNEST

Wenn der UNNEST-Operator innerhalb einer SELECT *-Anweisung verwendet wird, wird das EXCLUDE-Schlüsselwort verwendet, um die unnötigen FLATTEN-Spalten zu entfernen.

Eingabe:

SELECT * FROM UNNEST ([10,20,30]) AS numbers WITH OFFSET position;
Copy

Erstellter Code:

 SELECT
* EXCLUDE(SEQ, KEY, PATH, THIS)
FROM
TABLE(FLATTEN(INPUT => [10,20,30])) AS numbers (
SEQ,
KEY,
PATH,
position,
numbers,
THIS
);
Copy