* Cláusula (estrela)
Aplica-se a: Databricks SQL Databricks Runtime
Uma abreviatura para nomear todas as colunas referendáveis na FROM
cláusula ou as colunas ou campos de uma referência de tabela específica na FROM
cláusula.
A lista de colunas ou campos é ordenada pela ordem das referências de tabela e pela ordem das colunas dentro de cada referência de tabela. No caso de campos, ele é ordenado pela ordem dos campos dentro do struct.
A _metadata
coluna não está incluída nesta lista. Você deve mencioná-lo explicitamente.
Antes do Databricks Runtime 15.0, a cláusula star (*
) só pode ser usada na SELECT
lista.
Sintaxe
star_clause
[ name . ] * [ except_clause ]
except_clause
EXCEPT ( { column_name | field_name } [, ...] )
Parâmetros
-
Se name for um nome de tabela, lista as colunas na tabela referencial especificada. Se name for uma coluna ou nome de campo do tipo STRUCT', lista os campos na coluna ou campo referencial especificado. Se não estiver presente, lista todas as colunas de todas as tabelas referenciadas na cláusula FROM.
except_clause
Aplica-se a: Databricks SQL Databricks Runtime 11.3 LTS e superior
Opcionalmente, remove colunas ou campos do conjunto de colunas referencial identificado na
select_star
cláusula.-
Uma coluna que faz parte do conjunto de colunas que você pode referenciar.
-
Uma referência a um campo em uma coluna do conjunto de colunas 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 uma coluna incluída no conjunto de colunas que você pode referenciar ou 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