- Categorias:
Funções do sistema (Informações do sistema)
SYSTEM$LIST_ICEBERG_TABLES_FROM_CATALOG¶
Lista tabelas em um catálogo remoto Apache Iceberg™ REST (incluindo o Snowflake Open Catalog).
- Consulte também:
Sintaxe¶
SYSTEM$LIST_ICEBERG_TABLES_FROM_CATALOG( '<catalog_integration_name>'
[ , '<parent_namespace>', <levels> ] )
Argumentos¶
Obrigatório:
catalog_integration_name
Identificador para integração de catálogo para Iceberg REST ou Snowflake Open Catalog.
Opcional:
parent_namespace
O identificador do namespace a partir do qual iniciar a listagem de tabelas. Para recuperar resultados para o nível 0 do namespace no catálogo, especifique uma cadeia de caracteres vazia (
''
).Padrão: O namespace padrão para a integração do catálogo (
CATALOG_NAMESPACE
).levels
Especifica o número de níveis a serem percorridos na hierarquia de namespace para listagem de tabelas.
Por exemplo:
Se definido como 0, a função retorna todas as tabelas recursivamente, em relação ao
parent_namespace
.Se definido como 1, a função retorna todas as tabelas dentro de
parent_namespace
.Se definido como n, a função retorna tabelas com até n níveis de profundidade, em relação ao
parent_namespace
.
Padrão: 1
Retornos¶
Retorna uma cadeia de caracteres no formato JSON que lista tabelas no catálogo Iceberg REST para o namespace e o número de níveis especificados.
A cadeia de caracteres formatada em JSON tem a seguinte estrutura:
[
{
"namespace": "<namespace_identifier>",
"name": "<table_name>"
},
{
"namespace": "<namespace_identifier>",
"name": "<table_name_n>"
},
]
Requisitos de controle de acesso¶
Uma função usada para executar este comando SQL deve ter os seguintes privilégios no mínimo:
Privilégio |
Objeto |
Notas |
---|---|---|
USAGE |
Integração (catálogo) |
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.
Exemplos¶
Liste somente as tabelas no namespace do catálogo padrão:
SELECT SYSTEM$LIST_ICEBERG_TABLES_FROM_CATALOG('myCatalogIntegration');
Liste todas as tabela do catálogo:
SELECT SYSTEM$LIST_ICEBERG_TABLES_FROM_CATALOG('myCatalogIntegration', '', 0);
Liste todas as tabelas recursivamente sob o namespace db1
:
SELECT SYSTEM$LIST_ICEBERG_TABLES_FROM_CATALOG('myCatalogIntegration', 'db1', 0);
Liste todas as tabelas de três níveis sob o namespace db1
:
SELECT SYSTEM$LIST_ICEBERG_TABLES_FROM_CATALOG('myCatalogIntegration', 'db1', 3);