Saltar al contenido principal
Las funciones de tabla son métodos para crear tablas.
PáginaDescripción
azureBlobStorageProporciona una interfaz de tipo tabla para seleccionar e insertar archivos en Azure Blob Storage. Es similar a la función s3.
azureBlobStorageClusterPermite procesar archivos de Azure Blob Storage en paralelo con muchos nodos en un clúster especificado.
clusterAllReplicasPermite acceder a todos los segmentos (configurados en la sección remote_servers) de un clúster sin crear una tabla distribuida.
deltaLakeProporciona una interfaz de tipo tabla de solo lectura para las tablas de Delta Lake en Amazon S3.
deltaLakeClusterEs una extensión de la función de tabla deltaLake.
dictionaryMuestra los datos del diccionario como una tabla de ClickHouse. Funciona igual que el engine Dictionary.
executableLa función de tabla executable crea una tabla a partir de la salida de una función definida por el usuario (UDF) que defines en un script que envía filas a stdout.
fileUn motor de tabla que proporciona una interfaz de tipo tabla para SELECT desde archivos e INSERT en ellos, similar a la función de tabla S3. Usa file() al trabajar con archivos locales y s3() al trabajar con buckets en almacenamiento de objetos como S3, GCS o MinIO.
fileClusterPermite procesar simultáneamente archivos que coinciden con una ruta especificada en varios nodos de un clúster. El iniciador establece conexiones con los nodos worker, expande los globs de la ruta del archivo y delega las tareas de lectura de archivos a los nodos worker. Cada nodo worker consulta al iniciador cuál es el siguiente archivo que debe procesar, y repite este proceso hasta que se completan todas las tareas (es decir, hasta que se leen todos los archivos).
filesystemProporciona acceso al sistema de archivos para listar archivos y devolver sus metadatos y contenido.
formatAnaliza los datos de los argumentos según el formato de entrada especificado. Si no se especifica el argumento de estructura, se extrae de los datos.
gcsProporciona una interfaz de tipo tabla para SELECT e INSERT de datos desde Google Cloud Storage. Requiere el rol de IAM Storage Object User.
fuzzQueryAltera la cadena de consulta dada con variaciones aleatorias.
fuzzJSONAltera una cadena JSON con variaciones aleatorias.
generateRandomGenera datos aleatorios con un esquema dado. Permite rellenar tablas de prueba con esos datos. No se admiten todos los tipos.
mergeTreeTextIndexRepresenta el diccionario de un índice de texto en una tabla MergeTree. Puede usarse para introspección.
mergeTreeProjectionRepresenta el contenido de una proyección en tablas MergeTree. Puede usarse para introspección.
mergeTreeIndexRepresenta el contenido de los archivos de índice y marcas de las tablas MergeTree. Puede usarse para introspección.
hdfsCrea una tabla a partir de archivos en HDFS. Esta función de tabla es similar a las funciones de tabla url y file.
hdfsClusterPermite procesar archivos de HDFS en paralelo desde muchos nodos en un clúster especificado.
hudiProporciona una interfaz de tipo tabla de solo lectura para las tablas de Apache Hudi en Amazon S3.
ytsaurusEsta función de tabla permite leer datos del clúster de YTsaurus.
hudiCluster Table FunctionEs una extensión de la función de tabla hudi. Permite procesar en paralelo archivos de tablas Apache Hudi en Amazon S3 con muchos nodos en un clúster especificado.
icebergProporciona una interfaz de tipo tabla de solo lectura para tablas Apache Iceberg en Amazon S3, Azure, HDFS o almacenadas localmente.
paimonProporciona una interfaz de tipo tabla de solo lectura para tablas Apache Paimon en Amazon S3, Azure, HDFS o almacenadas localmente.
icebergClusterEs una extensión de la función de tabla iceberg que permite procesar archivos de Apache Iceberg en paralelo desde muchos nodos en un clúster especificado.
paimonClusterEs una extensión de la función de tabla paimon que permite procesar archivos de Apache Paimon en paralelo desde muchos nodos en un clúster especificado.
inputFunción de tabla que permite convertir e insertar de forma eficiente datos enviados al servidor con una estructura dada en una tabla con otra estructura.
jdbcDevuelve una tabla conectada mediante un driver JDBC.
mergeCrea una tabla Merge temporal. La estructura se derivará de las tablas subyacentes usando una unión de sus columnas y tipos comunes derivados.
mongodbPermite realizar consultas SELECT sobre datos almacenados en un servidor remoto de MongoDB.
mysqlPermite realizar consultas SELECT e INSERT sobre datos almacenados en un servidor remoto de MySQL.
nullCrea una tabla temporal con la estructura especificada y el motor de tabla Null. La función se utiliza para facilitar la escritura de pruebas y demostraciones.
timeSeriesMetricstimeSeriesMetrics devuelve la tabla de métricas utilizada por la tabla db_name.time_series_table, cuyo motor de tabla es TimeSeries.
timeSeriesSelectorLee series temporales de una tabla TimeSeries, filtradas por un selector y con marcas de tiempo dentro de un intervalo especificado.
timeSeriesTagsLa función de tabla timeSeriesTags devuelve la tabla de etiquetas utilizada por la tabla db_name.time_series_table, cuyo motor de tabla es TimeSeries.
prometheusQueryRangeEvalúa una consulta de Prometheus utilizando datos de una tabla TimeSeries.
zerosSe utiliza con fines de prueba como el método más rápido para generar muchas filas. Es similar a las tablas del sistema system.zeros y system.zeros_mt.
primesDevuelve una tabla con una única columna prime que contiene números primos.
timeSeriesDatatimeSeriesData devuelve la tabla de datos utilizada por la tabla db_name.time_series_table, cuyo motor de tabla es TimeSeries.
numbersDevuelve una tabla con una única columna number que contiene una secuencia de enteros.
prometheusQueryEvalúa una consulta de Prometheus utilizando datos de una tabla TimeSeries.
generate_series (generateSeries)Devuelve una tabla con una única columna, generate_series (UInt64), que contiene enteros de start a stop, ambos inclusive.
odbcDevuelve la tabla conectada mediante ODBC.
postgresqlPermite realizar consultas SELECT e INSERT sobre datos almacenados en un servidor remoto de PostgreSQL.
redisEsta función de tabla permite integrar ClickHouse con Redis.
remote, remoteSecureLa función de tabla remote permite acceder dinámicamente a servidores remotos, es decir, sin crear una tabla distribuida. La función de tabla remoteSecure es igual que remote, pero a través de una conexión segura.
s3 Table FunctionProporciona una interfaz similar a una tabla para seleccionar o insertar archivos en Amazon S3 y Google Cloud Storage. Esta función de tabla es similar a la función hdfs, pero ofrece características específicas de S3.
s3ClusterEs una extensión de la función de tabla s3 que permite procesar archivos de Amazon S3 y Google Cloud Storage en paralelo con varios nodos de un clúster especificado.
sqlitePermite realizar consultas sobre datos almacenados en una base de datos SQLite.
arrowFlightPermite realizar consultas sobre datos expuestos a través de un servidor Apache Arrow Flight.
urlCrea una tabla a partir de la URL con el format y la structure especificados
urlClusterPermite procesar archivos desde una URL en paralelo con varios nodos de un clúster especificado.
viewConvierte una subconsulta en una tabla. La función implementa vistas.
valuescrea un almacenamiento temporal que rellena columnas con valores.
loopLa función de tabla loop de ClickHouse se utiliza para devolver resultados de consultas en un bucle infinito.

Uso

Las funciones de tabla se pueden usar en la cláusula FROM de una consulta SELECT. Por ejemplo, puede usar SELECT para leer datos de un archivo en su máquina local mediante la función de tabla file.
Query
echo "1, 2, 3" > example.csv
Response
./clickhouse client
:) SELECT * FROM file('example.csv')
┌─c1─┬─c2─┬─c3─┐
│  1 │  2 │  3 │
└────┴────┴────┘
También puede usar funciones de tabla para crear una tabla temporal que solo está disponible en la consulta actual. Por ejemplo:
Query
SELECT * FROM generateSeries(1,5);
Response
┌─generate_series─┐
│               1 │
│               2 │
│               3 │
│               4 │
│               5 │
└─────────────────┘
La tabla se elimina cuando finaliza la consulta. Las funciones de tabla pueden utilizarse para crear tablas, usando la siguiente sintaxis:
Query
CREATE TABLE [IF NOT EXISTS] [db.]table_name AS table_function()
Por ejemplo:
Query
CREATE TABLE series AS generateSeries(1, 5);
SELECT * FROM series;
Response
┌─generate_series─┐
│               1 │
│               2 │
│               3 │
│               4 │
│               5 │
└─────────────────┘
Por último, las funciones de tabla pueden utilizarse para INSERT datos en una tabla. Por ejemplo, podríamos escribir el contenido de la tabla que creamos en el ejemplo anterior en un archivo del disco usando de nuevo la función de tabla file:
Query
INSERT INTO FUNCTION file('numbers.csv', 'CSV') SELECT * FROM series;
Query
cat numbers.csv
1
2
3
4
5
No puedes usar funciones de tabla si la opción allow_ddl está deshabilitada.
Última modificación el 10 de junio de 2026