SnowConvert AI - BigQuery - Operadores

Operadores IS

Operadores IS retornam TRUE ou FALSE para a condição que estão testando. Eles nunca retornam NULL, mesmo para entradas NULL. (BigQuery Referência de linguagem SQL - operadoresIS )

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

OperadorUNNEST

O operador UNNEST usa uma matriz e retorna uma tabela com uma linha para cada elemento da matriz. (Referência de linguagem BigQuery SQL, operador UNNEST).

Este operador será emulado usando a funçãoFLATTEN. As colunas VALUE e INDEX retornadas pela função serão renomeadas de acordo para corresponder aos aliases do operador 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 com UNNEST

Quando o operador UNNEST é usado dentro de uma instrução SELECT*, a palavra-chave EXCLUDE ;e usada para remover as colunas FLATTEN desnecessárias.

Entrada:

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

Código gerado:

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