* Cláusula (estrela)
Aplica-se a: Databricks SQL Databricks Runtime
Uma abreviatura para nomear todos os columns referenciáveis na cláusula FROM
ou os columns ou campos de uma referência table específica na cláusula FROM
.
A list de columns ou campos é ordenada pela sequência das referências de table e pela sequência de columns dentro de cada referência de table. No caso de campos, ele é ordenado pela ordem dos campos dentro do struct.
O _metadata
column não está incluído neste list. Você deve mencioná-lo explicitamente.
Antes do Databricks Runtime 15.0, a cláusula star (*
) só pode ser usada no SELECT
list.
Sintaxe
star_clause
[ name . ] * [ except_clause ]
except_clause
EXCEPT ( { column_name | field_name } [, ...] )
Parameters
-
Se o nome for um nome table, lista o columns no tablereferenciável especificado. Se nome é um nome de column ou um campo do tipo STRUCT, lista os campos no column ou no campo referenciável especificado. Se não estiver presente, lista todos os columns de todos os tables referenciados na cláusula FROM.
except_clause
Aplica-se a: Databricks SQL Databricks Runtime 11.3 LTS e superior
Opcionalmente, remove columns ou campos da set referenciável de columns identificados na cláusula
select_star
.-
Um column que faz parte do set de columns e que podes referenciar.
-
Uma referência a um campo em uma column do set de columns que você pode referenciar. Se você excluir todos os campos de um
STRUCT
, o resultado será um arquivoSTRUCT
.
Cada nome deve fazer referência a um column incluído no set de columns que se possa referenciar ou aos seus campos. Caso contrário, o Databricks SQL gerará um erro UNRESOLVED_COLUMN . Se os nomes se sobrepõem ou não são exclusivos, o Databricks SQL gera um erro EXCEPT_OVERLAPPING_COLUMNS .
-
Exemplos
– 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