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

JSON

InputOutputAlias

Description

Формат JSON считывает и выводит данные в формате JSON.

Формат JSON возвращает следующее:

ПараметрОписание
metaИмена колонок и их типы.
dataТаблицы данных
rowsОбщее количество выходных строк.
rows_before_limit_at_leastМинимальное количество строк, которое было бы без LIMIT. Выводится только если запрос содержит LIMIT. Если запрос содержит GROUP BY, rows_before_limit_at_least - это точное количество строк, которое было бы без LIMIT.
statisticsСтатистика, такая как elapsed, rows_read, bytes_read.
totalsИтоговые значения (при использовании WITH TOTALS).
extremesЭкстремальные значения (при установке extremes в 1).

Тип JSON совместим с JavaScript. Для обеспечения этого некоторые символы дополнительно экранируются:

  • слэш / экранируется как \/
  • альтернативные переносы строк U+2028 и U+2029, которые нарушают работу некоторых браузеров, экранируются как \uXXXX.
  • Символы управления ASCII экранируются: возврат табуляции, форма, новая строка, возврат каретки и горизонтальная табуляция заменяются на \b, \f, \n, \r, \t, а также оставшиеся байты в диапазоне 00-1F с использованием последовательностей \uXXXX.
  • Неправильные последовательности UTF-8 заменяются на символ замены �, чтобы текст вывода состоял из правильных последовательностей UTF-8.

Для совместимости с JavaScript, целые числа Int64 и UInt64 по умолчанию заключаются в двойные кавычки. Чтобы убрать кавычки, вы можете установить параметр конфигурации output_format_json_quote_64bit_integers в 0.

ClickHouse поддерживает NULL, который отображается как null в JSON-выводе. Чтобы включить значения +nan, -nan, +inf, -inf в вывод, установите output_format_json_quote_denormals в 1.

Example Usage

Пример:

Format Settings

Для формата ввода JSON, если настройка input_format_json_validate_types_from_metadata установлена в 1, типы из метаданных во входных данных будут сравниваться с типами соответствующих колонок из таблицы.

See Also