Compartilhar via


COLUMNS

Aplica-se a: verificação marcada como sim SQL do Databricks verificação marcada como sim Databricks Runtime 10.4 LTS e superior caixa de seleção marcada sim Somente Catálogo do Unity

INFORMATION_SCHEMA.COLUMNS descreve colunas de tabelas e exibições (relações) no catálogo.

As linhas retornadas são limitadas às relações com as quais o usuário tem o privilégio de interagir.

Definição

A relação COLUMNS contém as seguintes colunas:

Nome Tipo de dados Nullable Standard Descrição
TABLE_CATALOG STRING No Sim O catálogo que contém a relação.
TABLE_SCHEMA STRING No Sim O esquema que contém a relação.
TABLE_NAME STRING No Sim O nome da relação da qual a coluna faz parte.
COLUMN_NAME STRING No Sim Nome da coluna.
ORDINAL_POSITION INTEGER No Sim A posição (numerada de 1) da coluna na relação.
COLUMN_DEFAULT STRING No Sim O valor padrão usado quando a coluna não é especificada em um INSERT, NULL se indefinido.
IS_NULLABLE STRING No Sim YES se a coluna for anulável, caso contrário, NO.
FULL_DATA_TYPE STRING Não No O tipo de dados, conforme especificado na definição da coluna.
DATA_TYPE STRING Não Sim O nome do tipo de dados simples da coluna, entre STRUCT ou ARRAY.
CHARACTER_MAXIMUM_LENGTH INTEGER Sim Sim Sempre NULL, reservado para uso futuro.
CHARACTER_OCTET_LENGTH STRING Sim Sim Sempre NULL, reservado para uso futuro.
NUMERIC_PRECISION INTEGER Sim Sim Use FLOAT para os tipos numéricos integrais de base 2 e DOUBLE para o número de bits com suporte. Use o número de dígitos para DECIMAL, caso contrário, NULL.
NUMERIC_PRECISION_RADIX INTEGER Sim Yes Use 10 para DECIMAL e 2 para todos os outros tipos numéricos, caso contrário, NULL.
NUMERIC_SCALE INTEGER Sim Yes Use 0 para os tipos numéricos integrais e o número de dígitos à direita do ponto decimal para DECIMAL, caso contrário, NULL.
DATETIME_PRECISION INTEGER Sim Sim Use 0 para DATE, TIMESTAMP e INTERVAL... Use 3 para SECOND e use 0 para qualquer outro INTERVAL, caso contrário, NULL.
INTERVAL_TYPE STRING Sim Sim Use a parte da unidade do intervalo para INTERVAL, por exemplo, 'YEAR TO MONTH', caso contrário, NULL.
INTERVAL_PRECISION INTERAL Sim Sim Sempre NULL, reservado para uso futuro.
MAXIMUM_CARDINALITY INTEGER Sim Sim Sempre NULL, reservado para uso futuro.
IS_IDENTITY STRING No Sim Sempre ‘NÃO’, reservado para uso futuro.
IDENTITY_GENERATION STRING Sim Sim Sempre NULL, reservado para uso futuro.
IDENTITY_START STRING Sim Sim Sempre NULL, reservado para uso futuro.
IDENTITY_INCREMENT STRING Sim Sim Sempre NULL, reservado para uso futuro.
IDENTITY_MAXIMUM STRING Sim Sim Sempre NULL, reservado para uso futuro.
IDENTITY_MINIMUM STRING Sim Sim Sempre NULL, reservado para uso futuro.
IDENTITY_CYCLE STRING Sim Sim Sempre NULL, reservado para uso futuro.
IS_GENERATED STRING Sim Sim Sempre NULL, reservado para uso futuro.
GENERATION_EXPRESSION STRING Sim Sim Sempre NULL, reservado para uso futuro.
IS_SYSTEM_TIME_PERIOD_START STRING No Sim Sempre NO, reservado para uso futuro.
IS_SYSTEM_TIME_PERIOD_END STRING No Sim Sempre NO, reservado para uso futuro.
SYSTEM_TIME_PERIOD_TIMESTAMP_GENERATION STRING Sim Sim Sempre NULL, reservado para uso futuro.
IS_UPDATABLE STRING No Sim YES se a coluna for atualizável, caso contrário, NO.
PARTITION_ORDINAL_POSITION INTEGER Sim No Posição (numerada de 1) da coluna na partição, NULL se não for uma coluna de particionamento.
COMMENT STRING Sim No Uma descrição opcional da coluna.

Restrições

As seguintes restrições se aplicam à relação COLUMNS:

Classe Nome Lista de colunas Descrição
Chave primária COLUMNS_PK TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME Identificador exclusivo da coluna.
Chave exclusiva COLUMNS_UK TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, ORDINAL_POSITION) Identificador exclusivo da coluna.
Chave estrangeira COLUMN_TABLES_FK TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME Faz referência a TABELAS.

Exemplos

-- Show the columns of the CATALOG_PRIVILEGES relation in the main.information_schema schema.
> SELECT ordinal_position, column_name, data_type
    FROM main.information_schema.columns
    WHERE table_schema = 'information_schema'
      AND table_name = 'catalog_privileges'
    ORDER BY ordinal_position;
  1  grantor        STRING
  2  grantee        STRING
  3  catalog_name   STRING
  4  privilege_type STRING
  5  is_grantable   STRING