Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:
Databricks SQL
Databricks Runtime
Rövidítés a záradék összes hivatkozható oszlopának FROM vagy egy adott táblahivatkozás oszlopainak vagy mezőinek a záradékban FROM való elnevezéséhez.
Az oszlopok vagy mezők listáját a táblahivatkozások sorrendje és az egyes táblahivatkozások oszlopainak sorrendje rendezi. Mezők esetén a rendezés a struktúra mezőinek sorrendjében történik.
Az _metadata oszlop nem tartalmazza ezt a listát. Kifejezetten hivatkoznia kell rá.
A Databricks Runtime 15.0 előtt a csillag (*) záradék csak a SELECT listában használható.
Szintaxis
star_clause
[ name . ] * [ except_clause ]
except_clause
EXCEPT ( { column_name | field_name } [, ...] )
Paraméterek
-
Ha a név táblanév, a megadott hivatkozható tábla oszlopait sorolja fel. Ha a név típusú
STRUCToszlop vagy mezőnév, a megadott hivatkozható oszlop vagy mező mezőit sorolja fel. Ha nem jelenik meg, a FROM záradékban szereplő összes hivatkozott tábla összes oszlopát felsorolja. kivétel_záradék
A következőkre vonatkozik:
Databricks SQL
Databricks Runtime 11.3 LTS és újabbIgény szerint eltávolíthatja az oszlopokat vagy mezőket a
select_starzáradékban azonosított hivatkozható oszlopokból.-
Olyan oszlop, amely a hivatkozható oszlopok csoportjának része.
-
Hivatkozás a hivatkozható oszlopkészlet egyik mezőjére. Ha az összes mezőt kizárja egy
STRUCTmezőből, az eredmény üresSTRUCTlesz.
Minden névnek hivatkoznia kell egy olyan oszlopra, amely szerepel a hivatkozható oszlopkészletben vagy azok mezőiben. Ellenkező esetben a Databricks SQL UNRESOLVED_COLUMN hibát jelez. Ha a nevek átfedésben vannak vagy nem egyediek, a Databricks SQL EXCEPT_OVERLAPPING_COLUMNS hibát jelez.
-
Gyakori hibafeltételek
- CANNOT_RESOLVE_STAR_EXPAND
- EXCEPT_OVERLAPPING_COLUMNS
- INVALID_USAGE_OF_STAR_OR_REGEX
- UNRESOLVED_COLUMN
Példák
– 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
-- Cannot expand star for a non-existent table.
> SELECT unknown_table.* FROM VALUES(1) AS t(c1);
Error: CANNOT_RESOLVE_STAR_EXPAND
-- Overlapping columns in `EXCEPT`.
> SELECT * EXCEPT(c1, c1) FROM VALUES(1, 2) AS t(c1, c2);
Error: EXCEPT_OVERLAPPING_COLUMNS