SELECT-klasul
gäller för: Databricks SQL
Databricks Runtime
Samlar in de kolumner som ska returneras från underfrågan, inklusive utförande av uttryck, aggregeringar och deduplicering.
Syntax
SELECT [ hints ] [ ALL | DISTINCT ] { named_expression | star_clause } [, ...]
Parametrar
-
Tips hjälper Azure Databricks-optimeraren att fatta bättre planeringsbeslut. Azure Databricks stöder tips som påverkar valet av kopplingsstrategier och ompartitionering av data.
ALLA
Markera alla matchande rader från tabellreferenserna. Aktiverad som standard.
DISTINKT
Markera alla matchande rader från tabellreferenserna när du har tagit bort dubbletter i resultat.
namngiven_uttryck
Ett uttryck med ett valfritt tilldelat namn.
-
En kombination av ett eller flera värden, operatorer och SQL-funktioner som utvärderas till ett värde.
-
En valfri kolumnidentifierare som namnger uttrycksresultatet. Om ingen
column_alias
tillhandahålls, härleder Databricks SQL en.
-
-
En förkortning för att namnge alla referensbara kolumner i
FROM
-satsen eller en specifik tabellreferenss kolumner eller fält iFROM
-satsen.
Exempel
-- 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