cláusula* (estrela)
Aplica-se a: Databricks SQL
Databricks Runtime
Uma abreviatura para nomear todas as colunas referenciáveis na cláusula FROM
ou as colunas ou campos de referência de uma tabela específica na cláusula FROM
.
A lista de colunas ou campos é ordenada pela ordem das referências da tabela e pela ordem das colunas em cada referência da tabela. No caso de campos, ele é ordenado pela ordem dos campos dentro da estrutura.
A coluna _metadata
não está incluída nesta lista. Você deve referenciá-lo explicitamente.
Antes do Databricks Runtime 15.0, a cláusula star (*
) só pode ser usada na lista SELECT
.
Sintaxe
star_clause
[ name . ] * [ except_clause ]
except_clause
EXCEPT ( { column_name | field_name } [, ...] )
Parâmetros
-
Se name for um nome de tabela, listará as colunas na tabela referenciável especificada. Se o nome for um nome de coluna ou campo do tipo STRUCT`, lista os campos na coluna ou campo referenciável especificado. Se não estiver presente, lista todas as colunas de todas as tabelas referenciáveis na cláusula FROM.
-
except_cláusula
Aplica-se a:
Databricks SQL
Databricks Runtime 11.3 LTS e acima
Opcionalmente, remove colunas ou campos do conjunto referenciável de colunas identificado na cláusula
select_star
.-
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á umSTRUCT
vazio.
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 gera um erro UNRESOLVED_COLUMN. Se os nomes se sobrepuserem ou não forem exclusivos, o Databricks SQL emitirá 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