Перейти к основному содержимому
Перейти к основному содержимому

Табличные Функции

Табличные функции — это методы для создания таблиц.

Вы можете использовать табличные функции в:

  • FROM клаузе запроса SELECT.

    Метод создания временной таблицы, доступной только в текущем запросе. Таблица удаляется по завершении запроса.

  • CREATE TABLE AS table_function() запросе.

    Это один из методов создания таблицы.

  • INSERT INTO TABLE FUNCTION запросе.

примечание

Вы не можете использовать табличные функции, если параметр allow_ddl отключен.

СтраницаОписание
fileClusterПозволяет одновременно обрабатывать файлы, соответствующие заданному пути, на нескольких узлах в кластере. Инициатор устанавливает соединения с рабочими узлами, расширяет шаблоны в пути к файлу и передает задачи чтения файлов рабочим узлам. Каждый рабочий узел запрашивает у инициатора следующий файл для обработки, повторяя до завершения всех задач (все файлы прочитаны).
inputТабличная функция, которая позволяет эффективно преобразовывать и вставлять данные, отправленные на сервер с заданной структурой, в таблицу с другой структурой.
icebergПредоставляет интерфейс, подобный таблице, для чтения таблиц Apache Iceberg в Amazon S3, Azure, HDFS или локально хранящихся.
executableТабличная функция executable создает таблицу на основе вывода пользовательской функции (UDF), которую вы определяете в скрипте, выводящем строки в stdout.
timeSeriesMetricstimeSeriesMetrics возвращает таблицу метрик, используемую таблицей db_name.time_series_table, чей движок таблицы является движком TimeSeries.
loopТабличная функция loop в ClickHouse используется для возвращения результатов запроса в бесконечном цикле.
urlСоздает таблицу из URL с заданным format и structure
hudiПредоставляет интерфейс, подобный таблице, для чтения таблиц Apache Hudi в Amazon S3.
fuzzQueryВносит случайные изменения в заданную строку запроса.
clusterAllReplicasПозволяет получить доступ ко всем шартам (конфигурированным в разделе remote_servers) кластера без создания распределенной таблицы.
urlClusterПозволяет обрабатывать файлы из URL параллельно с многих узлов в заданном кластере.
redisЭта табличная функция позволяет интегрировать ClickHouse с Redis.
icebergClusterРасширение табличной функции iceberg, которое позволяет обрабатывать файлы из Apache Iceberg параллельно с многих узлов в заданном кластере.
viewПревращает подзапрос в таблицу. Функция реализует представления.
fileДвижок таблицы, который предоставляет интерфейс, похожий на таблицу, для SELECT из и INSERT в файлы, аналогично табличной функции s3. Используйте file(), когда работаете с локальными файлами, и s3(), когда работаете с корзинами в объектном хранилище, таких как S3, GCS или MinIO.
timeSeriesTagsТабличная функция timeSeriesTags возвращает таблицу тегов, используемую таблицей db_name.time_series_table, чей движок таблицы является движком TimeSeries.
mysqlПозволяет выполнять запросы SELECT и INSERT на данные, хранящиеся на удаленном сервере MySQL.
s3 Table FunctionПредоставляет интерфейс, похожий на таблицу, для выбора/вставки файлов в Amazon S3 и Google Cloud Storage. Эта табличная функция аналогична функции hdfs, но предоставляет функции, специфичные для S3.
dictionaryОтображает данные словаря как таблицу ClickHouse. Работает так же, как движок Dictionary.
hdfsСоздает таблицу из файлов в HDFS. Эта табличная функция аналогична табличным функциям url и file.
fuzzJSONВносит случайные изменения в строку JSON.
hdfsClusterПозволяет обрабатывать файлы из HDFS параллельно с многих узлов в заданном кластере.
zerosИспользуется для тестовых целей как самый быстрый метод генерации множества строк. Аналогично системным таблицам system.zeros и system.zeros_mt.
valuesСоздает временное хранилище, которое заполняет колонки значениями.
generateRandomГенерирует случайные данные с заданной схемой. Позволяет заполнять тестовые таблицы этими данными. Не все типы поддерживаются.
deltaLakeПредоставляет интерфейс, похожий на таблицу, для чтения таблиц Delta Lake в Amazon S3.
gcsПредоставляет интерфейс, похожий на таблицу, для SELECT и INSERT данных из Google Cloud Storage. Требует участия IAM роли Storage Object User.
mergeTreeIndexПредставляет содержимое индекса и файлов меток таблиц MergeTree. Может использоваться для инстроспекции.
postgresqlПозволяет выполнять запросы SELECT и INSERT на данные, хранящиеся на удаленном сервере PostgreSQL.
timeSeriesDatatimeSeriesData возвращает таблицу данных, использованную таблицей db_name.time_series_table, чей движок таблицы — TimeSeries.
azureBlobStorageПредоставляет интерфейс, похожий на таблицу, для выбора/вставки файлов в Azure Blob Storage. Похож на функцию s3.
odbcВозвращает таблицу, которая подключена через ODBC.
mergeСоздает временную таблицу Merge. Структура таблицы берется из первой таблицы, которая соответствует регулярному выражению.
hudiCluster Table FunctionРасширение табличной функции hudi. Позволяет обрабатывать файлы из таблиц Apache Hudi в Amazon S3 параллельно с многих узлов в заданном кластере.
generate_series (generateSeries)Возвращает таблицу с единственным столбцом generate_series (UInt64), который содержит целые числа от начала до конца включительно.
azureBlobStorageClusterПозволяет обрабатывать файлы из Azure Blob Storage параллельно с многих узлов в заданном кластере.
jdbcВозвращает таблицу, которая подключена через JDBC-драйвер.
formatПарсит данные из аргументов в соответствии с указанным форматом ввода. Если аргумент структуры не указан, он извлекается из данных.
s3ClusterРасширение табличной функции s3, которая позволяет обрабатывать файлы из Amazon S3 и Google Cloud Storage параллельно с многих узлов в заданном кластере.
TODO: Add titleTODO: Добавить описание
sqliteПозволяет выполнять запросы на данные, хранящиеся в базе данных SQLite.
deltaLakeClusterЭто расширение табличной функции deltaLake.
numbersВозвращает таблицы с единственным столбцом number, который содержит указанные целые числа.
nullСоздает временную таблицу заданной структуры с движком таблицы Null. Функция используется для удобства написания тестов и демонстраций.
remote, remoteSecureТабличная функция remote позволяет получать доступ к удаленным серверам динамически, т.е. без создания распределенной таблицы. Табличная функция remoteSecure аналогична remote, но через защищенное соединение.
mongodbПозволяет выполнять запросы SELECT на данные, хранящиеся на удаленном сервере MongoDB.