Использование предложения 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.
Использование перенаправления в командной строке
$ clickhouse-client --query "SELECT * from table" --format FormatName > result.txtСм. clickhouse-client.