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

Использование предложения INTO OUTFILE

Добавьте предложение INTO OUTFILE к своему запросу. Например:
SELECT * FROM table INTO OUTFILE 'file'
По умолчанию ClickHouse определяет выходной формат и сжатие по расширению имени файла. Например, все строки из nyc_taxi будут экспортированы в файл nyc_taxi.parquet в формате Parquet:
SELECT *
FROM nyc_taxi
INTO OUTFILE 'taxi_rides.parquet'
А следующий файл будет сжатым файлом с полями, разделёнными табуляцией:
SELECT *
FROM nyc_taxi
INTO OUTFILE 'taxi_rides.tsv.gz'
Если ClickHouse не может определить формат по расширению файла, для выходных данных по умолчанию используется формат TabSeparated. Чтобы указать выходной формат, используйте предложение FORMAT. Например:
SELECT *
FROM nyc_taxi
INTO OUTFILE 'taxi_rides.txt'
FORMAT CSV

Использование движка таблицы File

Ещё один вариант — использовать движок таблицы File, в котором ClickHouse хранит данные в файле. Вы можете выполнять запросы и вставку данных напрямую в файл. Например:
CREATE TABLE my_table (
   x UInt32,
   y String,
   z DateTime
)
ENGINE = File(Parquet)
Вставьте несколько строк:
INSERT INTO my_table VALUES
   (1, 'Hello', now()),
   (2, 'World', now()),
   (3, 'Goodbye', now())
Файл хранится в папке data на вашем сервере ClickHouse — а именно по пути /data/default/my_table в файле с именем data.Parquet.
Движок таблицы File очень удобен для создания файлов в вашей файловой системе и выполнения запросов к ним, но имейте в виду, что таблицы File — это не таблицы MergeTree, поэтому они не дают всех преимуществ MergeTree. Используйте File для удобного экспорта данных из ClickHouse в различные форматы.

Использование перенаправления в командной строке

$ clickhouse-client --query "SELECT * from table" --format FormatName > result.txt
См. clickhouse-client.
Последнее изменение 10 июня 2026 г.