DESCRIBE ICEBERG TABLE¶
Descreve as colunas em uma tabela Apache Iceberg™ ou os valores atuais, bem como os valores padrão, para as propriedades de uma tabela Iceberg.
DESCRIBE pode ser abreviado como DESC.
Observe que este tópico se refere às tabelas Iceberg simplesmente como “tabelas”, exceto onde a especificação de tabelas Iceberg evita confusão.
- Consulte também:
ALTER ICEBERG TABLE, DROP ICEBERG TABLE, CREATE ICEBERG TABLE, SHOW ICEBERG TABLES
Sintaxe¶
DESC[RIBE] [ ICEBERG ] TABLE <name> [ TYPE = { COLUMNS | STAGE } ]
Parâmetros¶
nameEspecifica o identificador da tabela a ser descrita. Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.
TYPE = COLUMNS | STAGEEspecifica se devem ser exibidas as colunas para a tabela ou as propriedades do estágio (incluindo seus valores atuais e padrão) para a tabela.
Padrão:
TYPE = COLUMNS
Requisitos de controle de acesso¶
A função usada para executar essa operação deve ter, no mínimo, os seguintes privilégios:
Privilégio |
Objeto |
Notas |
|---|---|---|
SELECT |
Tabela Iceberg |
O privilégio USAGE no banco de dados e no esquema pai é necessário para executar operações em qualquer objeto de um esquema. Observe que uma função com privilégio concedido em um esquema permite que essa função resolva o esquema. Por exemplo, uma função com privilégio CREATE concedido em um esquema pode criar objetos nesse esquema sem também ter USAGE concedido nesse esquema.
Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.
Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.
Notas de uso¶
Este comando não mostra os parâmetros do objeto para uma tabela. Em vez disso, use SHOW PARAMETERS IN TABLE.
DESC ICEBERG TABLE, DESCRIBE TABLE e DESCRIBE VIEW são intercambiáveis. Qualquer um desses comandos recupera os detalhes da tabela ou exibição que corresponde aos critérios da instrução; no entanto,
TYPE = STAGEnão se aplica às exibições porque elas não têm propriedades de estágio.A saída inclui uma coluna
POLICY NAMEpara indicar a política de mascaramento definida na coluna.Se uma política de mascaramento não for definida na coluna ou se a conta Snowflake não for Enterprise Edition ou superior, o Snowflake retorna
NULL.O comando retorna a coluna
NAME_MAPPINGsomente se você configurar Iceberg Compatibility V2 (icebergCompatV2) para a tabela Delta na qual sua tabela Iceberg se baseia.Nota
Para visualizar a coluna
NAME_MAPPING, você também deve ativar o pacote de mudança de comportamento 2025_01 em sua conta.Para ativar este pacote em sua conta, execute a seguinte instrução:
SELECT SYSTEM$ENABLE_BEHAVIOR_CHANGE_BUNDLE('2025_01');
Para pós-processar a saída deste comando, você pode usar o operador de canal (
->>) ou a função RESULT_SCAN. Ambos os constructos tratam a saída como um conjunto de resultados que você pode consultar.For example, you can use the pipe operator or RESULT_SCAN function to select specific columns from the SHOW command output or filter the rows.
When you refer to the output columns, use double-quoted identifiers for the column names. For example, to select the output column
type, specifySELECT "type".You must use double-quoted identifiers because the output column names for SHOW commands are in lowercase. The double quotes ensure that the column names in the SELECT list or WHERE clause match the column names in the SHOW command output that was scanned.
Exemplo¶
Crie um exemplo de tabela Iceberg:
CREATE OR REPLACE ICEBERG TABLE my_iceberg_table CATALOG='my_catalog_integration' EXTERNAL_VOLUME='my_ext_volume' METADATA_FILE_PATH='path/to/metadata/v2.metadata.json';
Descrever as colunas na tabela:
DESC ICEBERG TABLE my_iceberg_table ;