Zusammenfassung der Befehle¶
Snowflake unterstützt die meisten der in SQL:1999 definierten Befehle und Anweisungen.
Unter diesem Thema:
Befehle der DDL (Datendefinitionssprache)¶
Konto- und sitzungsbasierte DDL¶
Befehle |
Anmerkungen |
---|---|
ALTER ACCOUNT |
Wird verwendet, um Parameter auf Kontoebene festzulegen (nur von Benutzern mit ACCOUNTADMIN-Rolle). |
ALTER SESSION |
Wird verwendet, um Parameter in der aktuellen Sitzung festzulegen. |
SHOW FUNCTIONS |
Zeigt systemdefinierte Funktionen und benutzerdefinierte Funktionen einschließlich externer Funktionen an. |
SHOW PARAMETERS |
Wird verwendet, um die Parametereinstellungen für das Konto oder die aktuelle Sitzung anzuzeigen. Kann auch zum Anzeigen von Parametereinstellungen für Objekte mit Parametern verwendet werden. |
SHOW VARIABLES |
Wird verwendet, um SQL-Variablen in der aktuellen Sitzung anzuzeigen. |
SET , UNSET |
Wird verwendet, um SQL-Variablen in der aktuellen Sitzung festzulegen und aufzuheben. |
USE { DATABASE | ROLE | SCHEMA | WAREHOUSE } |
Der Befehl USE legt die Datenbank, Rolle, das Schema oder das Warehouse für die aktuelle Sitzung fest. |
DDL für Organisationsobjekte¶
Befehle |
Anmerkungen |
---|---|
{ CREATE | DROP | UNDROP } ACCOUNT |
Wird von Benutzern mit der Rolle ORGADMIN ausgeführt. ALTER ACCOUNT wird verwendet, um Parameter auf Kontoebene festzulegen, und wird von einem Benutzer mit der Rolle ACCOUNTADMIN ausgeführt. |
DDL für Kontoobjekte¶
Befehle |
Anmerkungen |
---|---|
{ ALTER | CREATE | DESC | DROP } APPLICATION |
|
{ ALTER | CREATE | DROP } APPLICATION PACKAGE |
|
{ ALTER | CREATE | DROP } CONNECTION |
|
{ ALTER | CREATE | DESC | DROP | UNDROP | USE } DATABASE |
CREATE unterstützt auch das Klonen bestehender Datenbanken. |
{ ALTER | CREATE | DESC | DROP } EXTERNAL VOLUME |
|
{ ALTER | CREATE } { API | EXTERNAL ACCESS | NOTIFICATION | SECURITY | STORAGE } INTEGRATION |
|
{ CREATE } CATALOG INTEGRATION |
ALTER wird für Katalogintegrationen nicht unterstützt. |
{ DESC | DROP } [ API | CATALOG | EXTERNAL ACCESS | NOTIFICATION | SECURITY | STORAGE ] INTEGRATION |
|
{ ALTER | CREATE | DESC | DROP } NETWORK POLICY |
|
{ 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 |
Dieser Befehl kann mit jedem beliebigen Kontoobjekt verwendet werden. Kommentare können auch mit CREATE oder ALTER festgelegt werden. |
{ GRANT | REVOKE } PRIVILEGE |
Berechtigungen sind nicht zwingend ein First-Class-Objekt, aber diese Befehle werden verwendet, um die Zugriffssteuerung für alle First-Class-Objekte in Snowflake zu aktivieren und zu verwalten. |
SHOW { APPLICATION PACKAGES | APPLICATIONS | DATABASES | EXTERNAL VOLUMES | [ API | CATALOG | EXTERNAL ACCESS | NOTIFICATION | SECURITY | STORAGE ] INTEGRATIONS | NETWORK POLICIES | PRIVILEGES | RESOURCE MONITORS | ROLES | SHARES | USERS | WAREHOUSES } |
DDL für Datenbank- und Schemaobjekte¶
Befehle |
Anmerkungen |
---|---|
{ ALTER | CREATE | DESC | DROP } AGGREGATION POLICY |
Wird zum Erstellen und Verwalten von Aggregationsrichtlinien verwendet. |
{ ALTER | CREATE | DESC | DROP } ALERT |
Wird zum Erstellen von Snowflake Alerts verwendet. |
{ ALTER | CREATE | DESC | DROP } AUTHENTICATION POLICY |
Wird zum Erstellen und Verwalten von Authentifizierungsrichtlinien verwendet. |
{ ALTER | CREATE | DESC | DROP } EVENT TABLE |
Wird zum Erstellen und Verwalten von Ereignistabellen verwendet. |
CREATE EXTERNAL FUNCTION |
Wird zum Erstellen externer Funktionen verwendet. |
{ ALTER | CREATE | DESC | DROP } FILE FORMAT |
CREATE unterstützt auch das Klonen bestehender Dateiformate. |
{ ALTER | CREATE | DESC | DROP } FUNCTION |
Wird zum Erstellen von UDFs (benutzerdefinierte Funktionen) und zur Verwaltung von UDFs und externen Funktionen verwendet. |
{ CREATE | DESC | DROP } HYBRID TABLE |
Wird zum Erstellen und Verwalten von Hybridtabellen verwendet. |
{ ALTER | CREATE | DESC | DROP } ICEBERG TABLE |
Wird zum Erstellen und Verwalten von Iceberg-Tabellen verwendet. |
{ ALTER | CREATE | DESC | DROP } MASKING POLICY |
Wird zum Erstellen und Verwalten von Maskierungsrichtlinien verwendet. |
{ ALTER | CREATE | DESC | DROP | UNDROP } MATERIALIZED VIEW |
Wird zum Erstellen und Verwalten von materialisierten Ansichten verwendet. |
{ ALTER | CREATE | DESC | DROP } NETWORK RULE |
|
{ ALTER | CREATE | DROP } MODEL |
DESCRIBE wird für Modellobjekte nicht unterstützt. ALTER wird auch zum Erstellen und Ändern von Modellversionen verwendet. |
{ ALTER | CREATE | DESC | DROP } PACKAGES POLICY |
Wird zum Erstellen und Verwalten von Paketrichtlinien verwendet. |
{ ALTER | CREATE | DESC | DROP } PASSWORD POLICY |
Wird zum Erstellen und Verwalten von Kennwortrichtlinien verwendet. |
{ ALTER | CREATE | DESC | DROP } PIPE |
|
{ ALTER | CREATE | DESC | DROP } PROCEDURE |
Wird zum Erstellen und Verwalten von gespeicherten Prozeduren verwendet. |
{ ALTER | CREATE | DESC | DROP } PROJECTION POLICY |
Wird zum Erstellen und Verwalten von Projektionsrichtlinien verwendet. |
{ ALTER | CREATE | DESC | DROP } ROW ACCESS POLICY |
Wird zum Erstellen und Verwalten von Zeilenzugriffsrichtlinien verwendet. |
{ ALTER | CREATE | DESC | DROP } SECRET |
Wird zum Erstellen und Verwalten von Geheimnissen verwendet. |
{ ALTER | CREATE | DESC | DROP } SEQUENCE |
CREATE unterstützt auch das Klonen bestehender Sequenzen. |
{ ALTER | CREATE | DESC | DROP } SESSION POLICY |
Wird zum Erstellen und Verwalten von Sitzungsrichtlinien verwendet. |
{ ALTER | CREATE | DESC | DROP } STAGE |
CREATE unterstützt auch das Klonen bestehender benannter Stagingbereiche (nur extern). |
{ ALTER | CREATE | DESC | DROP } STREAM |
CREATE unterstützt auch das Klonen von bestehenden benannten Streams. |
{ ALTER | CREATE | DESC | DROP | UNDROP | USE } SCHEMA |
CREATE unterstützt auch das Klonen vorhandener Schemas. |
{ ALTER | CREATE | DESC | DROP | TRUNCATE | UNDROP } TABLE |
CREATE unterstützt auch das Klonen bestehender Tabellen, das Erstellen von ausgefüllten Tabellen (mit CTAS) und das Erstellen leerer Tabellen (aus bestehenden Tabellen). |
{ ALTER | CREATE | DROP | UNDROP } TAG |
DESCRIBE wird für das Tag-Objekt nicht unterstützt. |
{ ALTER | CREATE | DESC | DROP } TASK |
|
{ ALTER | CREATE | DESC | DROP | UNDROP } VIEW |
|
COMMENT |
Dieser Befehl kann mit jedem Datenbank-/Schemaobjekt verwendet werden. Außerdem können Kommentare mit CREATE oder ALTER festgelegt werden. |
SHOW { AGGREGATION POLICIES | ALERTS | AUTHENTICATION POLICIES | EVENT TABLES | EXTERNAL FUNCTIONS | FILE FORMATS | HYBRID TABLE | ICEBERG TABLES | MASKING POLICIES | MATERIALIZED VIEWS | NETWORK RULES | PACKAGES POLICIES | PASSWORD POLICIES | PIPES | PROCEDURES | PROJECTION POLICIES | ROW ACCESS POLICIES | SCHEMAS | SECRETS | SEQUENCES | SESSION POLICIES | STAGES | STREAMS | TABLES | TAGS | TASKS | USER FUNCTIONS | VIEWS } |
Klassen¶
Befehl |
Anmerkungen |
---|---|
{ CREATE | DROP | SHOW } SNOWFLAKE.ML.ANOMALY_DETECTION |
Wird zum Verwalten von Modellen zur Anomalieerkennung verwendet, die Ausreißer in Ihren Zeitreihendaten erkennen. |
{ CREATE | DROP } SNOWFLAKE.CORE.BUDGET |
Wird zum Verwalten von Budgets verwendet. |
{ ALTER | CREATE | DROP | SHOW } SNOWFLAKE.ML.CLASSIFICATION |
Wird zum Verwalten von Modellen zur Klassifizierung verwendet. |
{ CREATE | DROP } SNOWFLAKE.CORE.CUSTOM_CLASSIFIER SHOW CUSTOM_CLASSIFIERS |
Wird zum verwalten von kundenspezifischen Klassifikatoren verwendet. |
{ CREATE | DROP | SHOW } FORECAST |
Wird zum Verwalten von Modellen zur Prognose verwendet. |
Befehle der DML (Datenbearbeitungssprache)¶
Befehle |
Anmerkungen |
---|---|
DELETE , INSERT , MERGE , REPLACE , UPDATE |
Werden für allgemeine DML verwendet. INSERT beinhaltet die Unterstützung für das Einfügen in mehrere Tabellen. |
COPY INTO { <Tabelle> | <Speicherort> } |
Wird zum Laden/Entladen von Daten verwendet (d. h. Massenimport/-export). |
COPY FILES , GET , LIST , PUT , REMOVE |
Diese Befehle führen keine DML aus. Sie werden verwendet, um Dateien zum Laden und Entladen von Daten bereitzustellen und zu verwalten. |
Abfragesyntax und Operatoren¶
Kategorie |
Konstrukte/Operatoren |
Anmerkungen |
---|---|---|
Abfragesyntax |
||
[ WITH ] |
||
SELECT [ DISTINCT ] |
Erforderlich. |
|
[ INTO ] |
Zum Festlegen von Snowflake Scripting-Variablen auf Werte in Ergebnisspalten. |
|
[ FROM ] |
||
[ AT | BEFORE ]
|
Zum Abfragen mit Time Travel. |
|
[ CHANGES ]
|
Zum Abfragen der Änderungsverfolgungs-Metadaten einer Tabelle. |
|
[ CONNECT BY ]
|
Zum Verknüpfen einer Tabelle mit sich selbst, um hierarchische Daten in der Tabelle zu verarbeiten. |
|
[ JOIN ]
|
Unterstützung von inneren, linken äußeren, rechten äußeren und vollständigen Verknüpfungen (Joins). |
|
[ ASOF JOIN ]
|
Unterstützung von ASOF-Joins. |
|
[ MATCH_RECOGNIZE ]
|
Zum Auffinden von Sequenzen von Zeilen, die mit einem Muster übereinstimmen. |
|
[ PIVOT | UNPIVOT ]
|
||
[ VALUES ]
|
||
[ SAMPLE ] / [ TABLESAMPLE ]
|
TABLESAMPLE ist ein Synonym für SAMPLE. |
|
[ WHERE ] |
||
[ GROUP BY ] |
Spalten, die in GROUP BY verwendet werden, müssen in der SELECT-Liste stehen. |
|
[ HAVING ]
|
||
[ ORDER BY ] |
||
[ LIMIT ] |
||
Arithmetische Operatoren |
||
|
||
Vergleichsoperatoren |
||
|
||
Logische/Boolesche Operatoren |
||
AND , NOT , OR |
||
Mengenoperatoren |
||
INTERSECT [ ALL ] , MINUS [ ALL ] / EXCEPT , UNION [ ALL ] |
||
Operatoren für Unterabfragen |
||
ANY / ALL , [ NOT ] EXISTS , [ NOT ] IN |
||
Prädikate |
||
BETWEEN , [ NOT ] EXISTS , [ NOT ] IN , LIKE |
TCL (Transaction Control Language)-Befehle¶
Befehle |
Anmerkungen |
---|---|
BEGIN , COMMIT , ROLLBACK |
Wird für Transaktionen mit mehreren Anweisungen in der aktuellen Sitzung verwendet. |
DESC TRANSACTIONS |
|
SHOW { LOCKS | TRANSACTIONS } |