Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks SQL
Databricks Runtime
Sammelt die Spalten, die von der Unterabfrage zurückgegeben werden sollen, einschließlich der Ausführung von Ausdrücken, Aggregationen und Deduplizierung.
Syntax
SELECT [ hints ] [ ALL | DISTINCT ] { named_expression | star_clause } [, ...]
Parameter
-
Hinweise helfen dem Azure Databricks-Optimierer, bessere Planungsentscheidungen zu treffen. Azure Databricks unterstützt Hinweise, die die Auswahl von Verknüpfungsstrategien und die Neupartitionierung der Daten beeinflussen.
ALLE
Wählen Sie alle übereinstimmenden Zeilen aus den Tabellenbezügen aus. Standardmäßig aktiviert.
EINDEUTIG
Wählen Sie alle übereinstimmenden Zeilen aus den Tabellenbezügen aus, nachdem Duplikate in Ergebnissen entfernt wurden.
named_expression
Ein Ausdruck mit einem optionalen zugewiesenen Namen.
-
Eine Kombination aus einer oder mehreren Werten, Operatoren und SQL-Funktionen, die zu einem Wert ausgewertet werden.
-
Ein Spaltenbezeichner, der optional das Ergebnis eines Ausdrucks benennt. Wenn
column_aliasnicht angegeben ist, leitet Databricks SQL ein solches Element ab.
-
-
Eine Abkürzung, um alle referenzierbaren Spalten in der
FROMKlausel oder die Spalten oder Felder eines bestimmten Tabellenverweises in derFROMKlausel zu benennen.
Beispiele
-- select all referencable columns from all tables
> SELECT * FROM VALUES(1, 2) AS t1(c1, c2), VALUES(3, 4) AS t2(c3, c4);
1 2 3 4
-- select all referencable columns from one table
> SELECT t2.* FROM VALUES(1, 2) AS t1(c1, c2), VALUES(3, 4) AS t2(c3, c4);
3 4
-- select all referencable columns from all tables except t2.c4
> SELECT * EXCEPT(c4) FROM VALUES(1, 2) AS t1(c1, c2), VALUES(3, 4) AS t2(c3, c4);
1 2 3
-- select all referencable columns from a table, except a nested field.
> SELECT * EXCEPT(c2.b) FROM VALUES(1, named_struct('a', 2, 'b', 3)) AS t(c1, c2);
1 { "a" : 2 }
-- Removing all fields results in an empty struct
> SELECT * EXCEPT(c2.b, c2.a) FROM VALUES(1, named_struct('a', 2, 'b', 3)) AS t(c1, c2);
1 { }
-- Overlapping names result in an error
> SELECT * EXCEPT(c2, c2.a) FROM VALUES(1, named_struct('a', 2, 'b', 3)) AS t(c1, c2);
Error: EXCEPT_OVERLAPPING_COLUMNS