* (gwiazdka) — klauzula
Dotyczy: Databricks SQL Databricks Runtime
Skrócona nazwa wszystkich kolumn, do których można odwoływać się w klauzuli FROM
, lub kolumny lub pola odwołania do określonej tabeli w klauzuli FROM
.
Lista kolumn lub pól jest uporządkowana według kolejności odwołań do tabeli i kolejności kolumn w poszczególnych odwołaniach do tabeli. W przypadku pól jest uporządkowana według kolejności pól w obrębie struktury.
Ta lista nie zawiera kolumny _metadata
. Musisz odwoływać się do niego jawnie.
Przed wersją Databricks Runtime 15.0 klauzula "star" (*
) może być używana tylko na liście SELECT
.
Składnia
star_clause
[ name . ] * [ except_clause ]
except_clause
EXCEPT ( { column_name | field_name } [, ...] )
Parametry
-
Jeśli nazwa jest nazwą tabeli, wyświetla listę kolumn w określonej tabeli możliwej do odwołania. Jeśli nazwa jest kolumną lub nazwą pola typu STRUKTURA", wyświetla pola w określonej kolumnie lub polu, do których można się odwołać. Jeśli lista kolumn nie jest podana, wymieniane są wszystkie kolumny ze wszystkich tabel, do których można się odwołać w klauzuli FROM.
except_clause
Dotyczy: Databricks SQL Databricks Runtime 11.3 LTS i nowsze
Opcjonalnie usuwa kolumny lub pola z zestawu kolumn, do których można się odwołać, zidentyfikowanych w klauzuli
select_star
.-
Kolumna, która jest częścią zestawu kolumn, do których można się odwoływać.
-
Odwołanie do pola w kolumnie, która jest częścią zestawu kolumn, do których można się odwoływać. Jeśli wykluczysz wszystkie pola z elementu
STRUCT
, wynik będzie pustySTRUCT
.
Każda nazwa musi odwoływać się do kolumny zawartej w zestawie kolumn, do których można odwoływać się lub do ich pól. W przeciwnym razie usługa SQL usługi Databricks zgłasza błąd UNRESOLVED_COLUMN . Jeśli nazwy nakładają się lub nie są unikatowe, usługa SQL usługi Databricks zgłasza błąd EXCEPT_OVERLAPPING_COLUMNS .
-
Przykłady
– Return all columns in the FROM clause
> SELECT * FROM VALUES(1, 2) AS TA(c1, c2), VALUES(‘a’, b’) AS TB(ca, cb);
1 2 a b
– Return all columns from TA
> SELECT TA.* FROM VALUES(1, 2) AS TA(c1, c2), VALUES(‘a’, b’) AS TB(ca, cb);
1 2
– Return all columns except TA.c1 and TB.cb
> SELECT * EXCEPT (c1, cb) FROM VALUES(1, 2) AS TA(c1, c2), VALUES(‘a’, b’) AS TB(ca, cb);
2 a
– Return all columns, but strip the field x from the struct.
> SELECT TA.* EXCEPT (c1.x) FROM VALUES(named_struct(‘x’, x, ‘y’, ‘y’), 2) AS (c1, c2), VALUES(‘a’, b’) AS TB(ca, cb);
{ y } 2 a b
-- Return all fields in c1.
> SELECT c1.* FROM VALUES(named_struct(‘x’, x, ‘y’, ‘y’), 2) AS (c1, c2), VALUES(‘a’, b’) AS TB(ca, cb);
x y
– Return the first not-NULL column in TA
> SELECT coalesce(TA.*) FROM VALUES(1, 2) AS TA(c1, c2), VALUES(‘a’, b’) AS TB(ca, cb);
1