Palavras-chave reservadas e limitadas¶
O Snowflake SQL reserva todas as palavras-chave ANSI (com exceção das palavras-chave do tipo CHAR, DATE, DECIMAL etc.), bem como algumas palavras-chave adicionais (ASC, DESC, MINUS etc.) que são reservadas por outros bancos de dados populares. Além disso, o Snowflake reserva palavras-chave REGEXP e RLIKE (que funcionam como a palavra-chave ANSI reservada LIKE) e SOME (que é sinônimo da palavra-chave ANSI reservada ANY).
Para evitar ambiguidades de análise, o Snowflake SQL também proíbe o uso de palavras-chave como LEFT, OUTER, JOIN etc. como nomes de tabela ou aliases na lista FROM, e o uso de palavras-chave como TRUE, FALSE, CASE etc. como referências de colunas em expressões escalares.
A tabela a seguir fornece a lista de palavras-chave reservadas no Snowflake e palavras-chave que não são estritamente reservadas, mas têm limitações de uso:
Palavra-chave  | 
Comentário  | 
|---|---|
A  | 
|
ACCOUNT  | 
Não pode ser usada como um identificador em um comando SHOW (por exemplo, “SHOW … IN <identificador>”).  | 
ALL  | 
Reservada por ANSI.  | 
ALTER  | 
Reservada por ANSI.  | 
AND  | 
Reservada por ANSI.  | 
ANY  | 
Reservada por ANSI.  | 
AS  | 
Reservada por ANSI.  | 
B  | 
|
BETWEEN  | 
Reservada por ANSI.  | 
BY  | 
Reservada por ANSI.  | 
C  | 
|
CASE  | 
Não pode ser usada como referência de coluna em uma expressão escalar.  | 
CAST  | 
Não pode ser usada como referência de coluna em uma expressão escalar.  | 
CHECK  | 
Reservada por ANSI.  | 
COLUMN  | 
Reservada por ANSI.  | 
CONNECT  | 
Reservada por ANSI.  | 
CONNECTION  | 
Não pode ser usada como um identificador em um comando SHOW (por exemplo, “SHOW … IN <identificador>”).  | 
CONSTRAINT  | 
Não pode ser usada como um nome de coluna em CREATE TABLE DDL.  | 
CREATE  | 
Reservada por ANSI.  | 
CROSS  | 
Não pode ser usada como nome de tabela ou alias em uma cláusula FROM.  | 
CURRENT  | 
Reservada por ANSI.  | 
CURRENT_DATE  | 
Não pode ser usada como nome de coluna (reservada por ANSI).  | 
CURRENT_TIME  | 
Não pode ser usada como nome de coluna (reservada por ANSI).  | 
CURRENT_TIMESTAMP  | 
Não pode ser usada como nome de coluna (reservada por ANSI).  | 
CURRENT_USER  | 
Não pode ser usada como nome de coluna (reservada por ANSI).  | 
D  | 
|
DATABASE  | 
Não pode ser usada como um identificador em um comando SHOW (por exemplo, “SHOW … IN <identificador>”).  | 
DELETE  | 
Reservada por ANSI.  | 
DISTINCT  | 
Reservada por ANSI.  | 
DROP  | 
Reservada por ANSI.  | 
E  | 
|
ELSE  | 
Reservada por ANSI.  | 
EXISTS  | 
Reservada por ANSI.  | 
F  | 
|
FALSE  | 
Não pode ser usada como referência de coluna em uma expressão escalar.  | 
FOLLOWING  | 
Reservada por ANSI.  | 
FOR  | 
Reservada por ANSI.  | 
FROM  | 
Reservada por ANSI.  | 
FULL  | 
Não pode ser usada como nome de tabela ou alias em uma cláusula FROM.  | 
G  | 
|
GRANT  | 
Reservada por ANSI.  | 
GROUP  | 
Reservada por ANSI.  | 
GSCLUSTER  | 
Não pode ser usada como um identificador em um comando SHOW (por exemplo, “SHOW … IN <identificador>”).  | 
H  | 
|
HAVING  | 
Reservada por ANSI.  | 
I  | 
|
ILIKE  | 
Reservada pelo Snowflake.  | 
IN  | 
Reservada por ANSI.  | 
INCREMENT  | 
Reservada pelo Snowflake e outros.  | 
INNER  | 
Não pode ser usada como nome de tabela ou alias em uma cláusula FROM.  | 
INSERT  | 
Reservada por ANSI.  | 
INTERSECT  | 
Reservada por ANSI.  | 
INTO  | 
Reservada por ANSI.  | 
IS  | 
Reservada por ANSI.  | 
ISSUE  | 
Não pode ser usada como um identificador em um comando SHOW (por exemplo, “SHOW … IN <identificador>”).  | 
J  | 
|
JOIN  | 
Não pode ser usada como nome de tabela ou alias em uma cláusula FROM.  | 
L  | 
|
LATERAL  | 
Não pode ser usada como nome de tabela ou alias em uma cláusula FROM.  | 
LEFT  | 
Não pode ser usada como nome de tabela ou alias em uma cláusula FROM.  | 
LIKE  | 
Reservada por ANSI.  | 
LOCALTIME  | 
Não pode ser usada como nome de coluna (reservada por ANSI).  | 
LOCALTIMESTAMP  | 
Não pode ser usada como nome de coluna (reservada por ANSI).  | 
M  | 
|
MINUS  | 
Reservada pelo Snowflake e outros.  | 
N  | 
|
NATURAL  | 
Não pode ser usada como nome de tabela ou alias em uma cláusula FROM.  | 
NOT  | 
Reservada por ANSI.  | 
NULL  | 
Reservada por ANSI.  | 
O  | 
|
OF  | 
Reservada por ANSI.  | 
ON  | 
Reservada por ANSI.  | 
OR  | 
Reservada por ANSI.  | 
ORDER  | 
Reservada por ANSI.  | 
ORGANIZATION  | 
Não pode ser usada como um identificador em um comando SHOW (por exemplo, “SHOW … IN <identificador>”).  | 
Q  | 
|
QUALIFY  | 
Reservada pelo Snowflake.  | 
R  | 
|
REGEXP  | 
Reservada pelo Snowflake.  | 
REVOKE  | 
Reservada por ANSI.  | 
RIGHT  | 
Não pode ser usada como nome de tabela ou alias em uma cláusula FROM.  | 
RLIKE  | 
Reservada pelo Snowflake.  | 
ROW  | 
Reservada por ANSI.  | 
ROWS  | 
Reservada por ANSI.  | 
S  | 
|
SAMPLE  | 
Reservada por ANSI.  | 
SCHEMA  | 
Não pode ser usada como um identificador em um comando SHOW (por exemplo, “SHOW … IN <identificador>”).  | 
SELECT  | 
Reservada por ANSI.  | 
SET  | 
Reservada por ANSI.  | 
SOME  | 
Reservada pelo Snowflake.  | 
START  | 
Reservada por ANSI.  | 
T  | 
|
TABLE  | 
Reservada por ANSI.  | 
TABLESAMPLE  | 
Reservada por ANSI.  | 
THEN  | 
Reservada por ANSI.  | 
TO  | 
Reservada por ANSI.  | 
TRIGGER  | 
Reservada por ANSI.  | 
TRUE  | 
Não pode ser usada como referência de coluna em uma expressão escalar.  | 
TRY_CAST  | 
Não pode ser usada como referência de coluna em uma expressão escalar.  | 
U  | 
|
UNION  | 
Reservada por ANSI.  | 
UNIQUE  | 
Reservada por ANSI.  | 
UPDATE  | 
Reservada por ANSI.  | 
USING  | 
Não pode ser usada como nome de tabela ou alias em uma cláusula FROM.  | 
V  | 
|
VALUES  | 
Reservada por ANSI.  | 
VIEW  | 
Não pode ser usada como um identificador em um comando SHOW (por exemplo, “SHOW … IN <identificador>”).  | 
W  | 
|
WHEN  | 
Não pode ser usada como referência de coluna em uma expressão escalar.  | 
WHENEVER  | 
Reservada por ANSI.  | 
WHERE  | 
Reservada por ANSI.  | 
WINDOW  | 
Reservada por ANSI.  | 
WITH  | 
Reservada por ANSI.  |