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

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

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

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

  • 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 из файлов и вставки в файлы, аналогичный функции 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), содержащим целые числа от start до stop включительно.
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.