Секция INTO OUTFILE 

Секция INTO OUTFILE перенаправляет результат запроса SELECT в файл на стороне клиента.

Поддерживаются сжатые файлы. Формат сжатия определяется по расширению файла (по умолчанию используется режим 'auto'), либо он может быть задан явно в секции COMPRESSION.

Синтаксис

SELECT <expr_list> INTO OUTFILE file_name [COMPRESSION type]

file_name и type задаются в виде строковых литералов. Поддерживаются форматы сжатия: 'none', 'gzip', 'deflate', 'br', 'xz', 'zstd', 'lz4', 'bz2'.

Детали реализации 

  • Эта функция доступна только в следующих интерфейсах: клиент командной строки и clickhouse-local. Таким образом, запрос, отправленный через HTTP интерфейс вернет ошибку.
  • Запрос завершится ошибкой, если файл с тем же именем уже существует.
  • По умолчанию используется выходной формат TabSeparated (как в пакетном режиме клиента командной строки). Его можно изменить в секции FORMAT.

Пример

Выполните следующий запрос, используя клиент командной строки:

clickhouse-client --query="SELECT 1,'ABC' INTO OUTFILE 'select.gz' FORMAT CSV;"
zcat select.gz 

Результат:

1,"ABC"

Rating: 3.9 - 16 votes

Was this content helpful?
★★★★☆