Pular para o conteúdo principal
Funções de tabela são usadas para construir tabelas.
PáginaDescrição
azureBlobStorageFornece uma interface semelhante a uma tabela para selecionar/inserir arquivos no Azure Blob Storage. Semelhante à função s3.
azureBlobStorageClusterPermite processar arquivos do Azure Blob Storage em paralelo em vários nós de um cluster especificado.
clusterAllReplicasPermite acessar todos os shards (configurados na seção remote_servers) de um cluster sem criar uma tabela Distributed.
deltaLakeFornece uma interface semelhante a uma tabela, somente leitura, para tabelas Delta Lake no Amazon S3.
deltaLakeClusterEsta é uma extensão da função de tabela deltaLake.
dictionaryExibe os dados do dicionário como uma tabela do ClickHouse. Funciona da mesma forma que o engine Dictionary.
executableA função de tabela executable cria uma tabela com base na saída de uma função definida pelo usuário (UDF) que você define em um script que envia linhas para stdout.
fileUm engine de tabela que fornece uma interface semelhante a uma tabela para SELECT de arquivos e INSERT em arquivos, semelhante à função de tabela s3. Use file() ao trabalhar com arquivos locais e s3() ao trabalhar com buckets em armazenamento de objetos como S3, GCS ou MinIO.
fileClusterPermite o processamento simultâneo de arquivos que correspondem a um caminho especificado em vários nós de um cluster. O iniciador estabelece conexões com os nós de worker, expande globs no caminho do arquivo e delega tarefas de leitura de arquivos aos nós de worker. Cada nó de worker consulta o iniciador em busca do próximo arquivo a ser processado, repetindo isso até que todas as tarefas sejam concluídas (todos os arquivos sejam lidos).
filesystemFornece acesso ao sistema de arquivos para listar arquivos e retornar seus metadados e conteúdo.
formatAnalisa os dados dos argumentos de acordo com o formato de entrada especificado. Se o argumento de estrutura não for especificado, ele será extraído dos dados.
gcsFornece uma interface semelhante a uma tabela para SELECT e INSERT de dados do Google Cloud Storage. Requer a IAM role Storage Object User.
fuzzQueryPerturba a string de consulta fornecida com variações aleatórias.
fuzzJSONPerturba uma string JSON com variações aleatórias.
generateRandomGera dados aleatórios com um schema especificado. Permite preencher tabelas de teste com esses dados. Nem todos os tipos são compatíveis.
mergeTreeTextIndexRepresenta o dicionário de um índice de texto em uma tabela MergeTree. Pode ser usado para introspecção.
mergeTreeProjectionRepresenta o conteúdo de uma projeção em tabelas MergeTree. Pode ser usado para introspecção.
mergeTreeIndexRepresenta o conteúdo dos arquivos de índice e de marcas de tabelas MergeTree. Pode ser usado para introspecção.
hdfsCria uma tabela a partir de arquivos no HDFS. Esta função de tabela é semelhante às funções de tabela url e file.
hdfsClusterPermite processar arquivos do HDFS em paralelo em vários nós de um cluster especificado.
hudiFornece uma interface semelhante a uma tabela, somente leitura, para tabelas Apache Hudi no Amazon S3.
ytsaurusA função de tabela permite ler dados do cluster YTsaurus.
hudiCluster Table FunctionUma extensão da função de tabela hudi. Permite processar arquivos de tabelas Apache Hudi no Amazon S3 em paralelo em vários nós de um cluster especificado.
icebergFornece uma interface semelhante a uma tabela, somente leitura, para tabelas Apache Iceberg no Amazon S3, Azure, HDFS ou armazenadas localmente.
paimonFornece uma interface semelhante a uma tabela, somente leitura, para tabelas Apache Paimon no Amazon S3, Azure, HDFS ou armazenadas localmente.
icebergClusterUma extensão da função de tabela iceberg que permite processar arquivos do Apache Iceberg em paralelo em vários nós de um cluster especificado.
paimonClusterUma extensão da função de tabela paimon que permite processar arquivos do Apache Paimon em paralelo em vários nós de um cluster especificado.
inputFunção de tabela que permite converter e inserir com eficiência dados enviados ao servidor com uma determinada estrutura em uma tabela com outra estrutura.
jdbcRetorna uma tabela conectada por um JDBC driver.
mergeCria uma tabela Merge temporária. A estrutura será derivada das tabelas subjacentes usando uma união de suas colunas e inferindo tipos comuns.
mongodbPermite executar consultas SELECT em dados armazenados em um servidor MongoDB remoto.
mysqlPermite executar consultas SELECT e INSERT em dados armazenados em um servidor MySQL remoto.
nullCria uma tabela temporária com a estrutura especificada usando o mecanismo de tabela Null. A função é usada para facilitar a escrita de testes e demonstrações.
timeSeriesMetricstimeSeriesMetrics retorna a tabela de métricas usada pela tabela db_name.time_series_table, cujo mecanismo de tabela é TimeSeries.
timeSeriesSelectorLê séries temporais de uma tabela TimeSeries, filtradas por um seletor e com timestamps em um intervalo especificado.
timeSeriesTagsA função de tabela timeSeriesTags retorna a tabela de tags usada pela tabela db_name.time_series_table, cujo mecanismo de tabela é TimeSeries.
prometheusQueryRangeAvalia uma consulta Prometheus usando dados de uma tabela TimeSeries.
zerosUsada para fins de teste como o método mais rápido de gerar muitas linhas. Semelhante às tabelas de sistema system.zeros e system.zeros_mt.
primesRetorna uma tabela com uma única coluna prime que contém números primos.
timeSeriesDatatimeSeriesData retorna a tabela de dados usada pela tabela db_name.time_series_table, cujo mecanismo de tabela é TimeSeries.
numbersRetorna uma tabela com uma única coluna number que contém uma sequência de números inteiros.
prometheusQueryAvalia uma consulta Prometheus usando dados de uma tabela TimeSeries.
generate_series (generateSeries)Retorna uma tabela com a única coluna generate_series (UInt64), que contém números inteiros de start a stop, inclusive.
odbcRetorna a tabela conectada via ODBC.
postgresqlPermite executar consultas SELECT e INSERT em dados armazenados em um servidor PostgreSQL remoto.
redisEsta função de tabela permite integrar o ClickHouse ao Redis.
remote, remoteSecureA função de tabela remote permite acessar servidores remotos dinamicamente, ou seja, sem criar uma tabela distribuída. A função de tabela remoteSecure é igual à remote, mas usa uma conexão segura.
s3 Table FunctionFornece uma interface semelhante a uma tabela para selecionar/inserir arquivos no Amazon S3 e no Google Cloud Storage. Esta função de tabela é semelhante à função hdfs, mas oferece recursos específicos do S3.
s3ClusterUma extensão da função de tabela s3, que permite processar arquivos do Amazon S3 e do Google Cloud Storage em paralelo em vários nós de um cluster especificado.
sqlitePermite executar consultas em dados armazenados em um banco de dados SQLite.
arrowFlightPermite executar consultas em dados expostos por meio de um servidor Apache Arrow Flight.
urlCria uma tabela a partir da URL com o format e a structure especificados
urlClusterPermite processar arquivos de uma URL em paralelo a partir de vários nós em um cluster especificado.
viewTransforma uma subconsulta em uma tabela. A função implementa views.
valuescria um armazenamento temporário que preenche colunas com valores.
loopA função de tabela loop no ClickHouse é usada para retornar resultados de consulta em um loop infinito.

Uso

Funções de tabela podem ser usadas na cláusula FROM de uma consulta SELECT. Por exemplo, você pode usar SELECT para selecionar dados de um arquivo na sua máquina local usando a função de tabela file.
Query
echo "1, 2, 3" > example.csv
Response
./clickhouse client
:) SELECT * FROM file('example.csv')
┌─c1─┬─c2─┬─c3─┐
│  1 │  2 │  3 │
└────┴────┴────┘
Você também pode usar funções de tabela para criar uma tabela temporária disponível apenas na consulta atual. Por exemplo:
Query
SELECT * FROM generateSeries(1,5);
Response
┌─generate_series─┐
│               1 │
│               2 │
│               3 │
│               4 │
│               5 │
└─────────────────┘
A tabela é excluída quando a consulta é concluída. As funções de tabela podem ser usadas para criar tabelas, usando a seguinte sintaxe:
Query
CREATE TABLE [IF NOT EXISTS] [db.]table_name AS table_function()
Por exemplo:
Query
CREATE TABLE series AS generateSeries(1, 5);
SELECT * FROM series;
Response
┌─generate_series─┐
│               1 │
│               2 │
│               3 │
│               4 │
│               5 │
└─────────────────┘
Por fim, funções de tabela podem ser usadas para inserir dados em uma tabela. Por exemplo, poderíamos gravar o conteúdo da tabela que criamos no exemplo anterior em um arquivo no disco usando novamente a função de tabela file:
Query
INSERT INTO FUNCTION file('numbers.csv', 'CSV') SELECT * FROM series;
Query
cat numbers.csv
1
2
3
4
5
Você não pode usar funções de tabela se a configuração allow_ddl estiver desativada.
Última modificação em 10 de junho de 2026