Partilhar via


* Cláusula (asterisco)

Aplica-se a:Sim assinalado Databricks SQL Sim assinalado 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 coluna _metadata 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 lista de SELECT.

Sintaxe

star_clause
   [ name . ] * [ except_clause ]

except_clause
   EXCEPT ( { column_name | field_name } [, ...] )

Parâmetros

  • Nome

    Sé o nome for um nome de tabela, lista as colunas na tabela referenciável especificada. Se o nome 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.

  • cláusula_de_exceção

    Aplica-se a:confirmado sim Databricks SQL confirmado sim Databricks Runtime 11.3 LTS e superior

    Opcionalmente, elimina colunas ou campos do conjunto de colunas referencial identificado na cláusula select_star.

    • nome_da_coluna

      Uma coluna que faz parte do conjunto de colunas que você pode referenciar.

    • field_name

      Uma referência a um campo em uma coluna do conjunto de colunas que você pode referenciar. Se excluires todos os campos de um STRUCT, o resultado é um STRUCT.

    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