SnowConvert AI - BigQuery - Opérateurs

Opérateurs IS

Les opérateurs IS renvoient TRUE ou FALSE pour la condition qu’ils testent. Ils ne renvoient jamais NULL, même pour les entrées NULL. (Référence linguistique BigQuery SQL Opérateurs IS).

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

Opérateur UNNEST

L’opérateur UNNEST prend un tableau et renvoie une table avec une ligne pour chaque élément du tableau. (Référence linguistique Opérateur BigQuery SQL UNNESTr).

Cet opérateur sera émulé à l’aide de la fonction FLATTEN, les colonnes VALUE et INDEX renvoyées par la fonction seront renommées en conséquence pour correspondre aux alias de l’opérateur UNNEST

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 * avec UNNEST

L’opérateur UNNEST est utilisé à l’intérieur d’une instruction SELECT * le mot-clé EXCLUDE sera utilisé pour supprimer les colonnes FLATTEN inutiles.

Entrée :

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

Code généré :

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