Résumé des commandes

Snowflake prend en charge la plupart des commandes et des instructions définies dans SQL:1999.

Dans ce chapitre :

Commandes DDL (Langage de définition des données)

DDL basé sur les comptes et les sessions

Commandes

Remarques

ALTER ACCOUNT

Utilisé pour définir les paramètres au niveau du compte (uniquement par les utilisateurs avec le rôle ACCOUNTADMIN).

ALTER SESSION

Utilisé pour définir des paramètres dans la session en cours.

SHOW FUNCTIONS

Affiche les fonctions définies par le système et les fonctions définies par l’utilisateur, y compris les fonctions externes.

SHOW PARAMETERS

Permet d’afficher les paramètres de configuration du compte ou de la session en cours. Peut également être utilisé pour afficher les paramètres des objets ayant des paramètres.

SHOW VARIABLES

Utilisé pour définir des variables SQL dans la session en cours.

SET , UNSET

Utilisé pour définir et annuler des variables SQL dans la session en cours.

USE { DATABASE | ROLE | SCHEMA | WAREHOUSE }

La commande USE définit la base de données, le rôle, le schéma ou l’entrepôt virtuel pour la session en cours.

DDL d’objet de compte

Commandes

Remarques

{ ALTER | CREATE | DESC | DROP | UNDROP | USE } DATABASE

CREATE prend également en charge le clonage des bases de données existantes.

{ ALTER | CREATE | DESC | DROP } RESOURCE MONITOR

{ ALTER | CREATE | DESC | DROP | USE } ROLE

{ ALTER | CREATE | DESC | DROP } SHARE

{ ALTER | CREATE | DESC | DROP } USER

{ ALTER | CREATE | DESC | DROP | USE } WAREHOUSE

COMMENT

Cette commande peut être utilisée avec n’importe quel objet de compte ; aussi, les commentaires peuvent être définis en utilisant CREATE ou ALTER.

{ GRANT | REVOKE } PRIVILEGE

Les privilèges ne sont pas strictement un objet de première classe ; cependant, ces commandes sont utilisées pour activer et gérer le contrôle d’accès pour tous les objets de première classe dans Snowflake.

SHOW { DATABASES | PRIVILEGES | RESOURCE MONITORS | ROLES | SHARES | USERS | WAREHOUSES }

DDL d’objet de base de données/schéma

Commandes

Remarques

{ ALTER | CREATE | DESC | DROP } FILE FORMAT

CREATE prend également en charge le clonage des formats de fichiers existants.

{ ALTER | CREATE | DESC | DROP } EXTERNAL FUNCTION

Utilisé pour créer et gérer des fonctions externes.

{ ALTER | CREATE | DESC | DROP } FUNCTION

Utilisé pour créer et gérer des UDFs (fonctions définies par l’utilisateur).

{ ALTER | CREATE | DESC | DROP } MASKING POLICIES

Utilisé pour créer et gérer des politiques de masquage.

{ ALTER | CREATE | DESC | DROP | UNDROP } MATERIALIZED VIEW

Utilisé pour créer et gérer des vues matérialisées.

{ ALTER | CREATE | DESC | DROP } PIPE

{ ALTER | CREATE | DESC | DROP } PROCEDURE

Utilisé pour créer et gérer des procédures stockées.

{ ALTER | CREATE | DESC | DROP } SEQUENCE

CREATE prend également en charge le clonage de séquences existantes.

{ ALTER | CREATE | DESC | DROP } STAGES

CREATE prend également en charge le clonage des zones de préparation nommées existantes (externes uniquement).

{ ALTER | CREATE | DESC | DROP | UNDROP | USE } SCHEMA

CREATE prend également en charge le clonage des schémas existants.

{ ALTER | CREATE | DESC | DROP | TRUNCATE | UNDROP } TABLE

CREATE prend également en charge le clonage de tables existantes, la création de tables remplies (à l’aide de CTAS) et la création de tables vides (à partir de tables existantes).

{ ALTER | CREATE | DESC | DROP | UNDROP } VIEW

COMMENT

Cette commande peut être utilisée avec n’importe quel objet de base de données/schéma ; aussi, les commentaires peuvent être définis en utilisant CREATE ou ALTER.

SHOW { EXTERNAL FUNCTIONS | FILE FORMATS | MASKING POLICIES | MATERIALIZED VIEWS | PIPES | PROCEDURES | SCHEMAS | SEQUENCES | STAGES | TABLES | USER FUNCTIONS | VIEWS }

Commandes DML (Langage de manipulation de données)

Commandes

Remarques

DELETE , INSERT , MERGE , REPLACE , UPDATE

Utilisé pour des commandes DML générales. INSERT comprend la prise en charge d’insertions multi-tables.

COPY INTO { <table> | <emplacement> }

Utilisé pour le chargement/déchargement des données (import/export en bloc).

GET , LIST , PUT , REMOVE

Ces commandes n’exécutent pas DML ; elles sont utilisées pour stocker et gérer des fichiers pour le chargement et le déchargement de données.

Syntaxe de requête et opérateurs

Catégorie

Constructions/Opérateurs

Remarques

Syntaxe de requête

[ WITH ]

SELECT [ DISTINCT ]

Requis.

[ FROM ]

[ AT | BEFORE ]

Pour les requêtes utilisant Time Travel.

[ SAMPLE ] / [ TABLESAMPLE ]

TABLESAMPLE est un synonyme de SAMPLE.

[ JOIN ]

Prise en charge pour les jointures intérieures, extérieures gauche, extérieures droite et pleines.

[ PIVOT | UNPIVOT ]

[ WHERE ]

[ GROUP BY ]

Les colonnes utilisées dans GROUP BY doivent être dans la liste SELECT.

[ HAVING ]

[ ORDER BY ]

[ VALUES ]

[ LIMIT ]

Opérateurs arithmétiques

+ , - , * , \ , %

Opérateurs de comparaison

= , != , < > , > , >= , < , <=

Opérateurs logiques/booléens

AND , NOT , OR

Opérateurs Set

INTERSECT [ ALL ] , MINUS [ ALL ] / EXCEPT , UNION [ ALL ]

Opérateurs de sous-requête

ANY / ALL , [ NOT ] EXISTS , [ NOT ] IN

Prédicats

BETWEEN , [ NOT ] EXISTS , [ NOT ] IN , LIKE

Commandes TCL (Langage de contrôle des transactions)

Commandes

Remarques

BEGIN , COMMIT , ROLLBACK

Utilisé pour les transactions multi-instructions dans la session en cours.

SHOW { LOCKS | TRANSACTIONS }