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

Описание

В этом формате один объект JSON интерпретируется как одно значение. Если входные данные содержат несколько объектов JSON (разделенных запятыми), они интерпретируются как отдельные строки. Если входные данные заключены в [], они интерпретируются как массив объектов JSON.
Этот формат можно разобрать только для таблицы с единственным полем типа String. Для остальных столбцов должно быть задано либо DEFAULT, либо MATERIALIZED, либо они должны быть опущены.
После сериализации всего объекта JSON в String вы можете использовать функции JSON для его обработки.

Пример использования

Простой пример

Query
DROP TABLE IF EXISTS json_as_string;
CREATE TABLE json_as_string (json String) ENGINE = Memory;
INSERT INTO json_as_string (json) FORMAT JSONAsString {"foo":{"bar":{"x":"y"},"baz":1}},{},{"any json stucture":1}
SELECT * FROM json_as_string;
Response
┌─json──────────────────────────────┐
│ {"foo":{"bar":{"x":"y"},"baz":1}} │
│ {}                                │
│ {"any json stucture":1}           │
└───────────────────────────────────┘

Массив объектов JSON

Query
CREATE TABLE json_square_brackets (field String) ENGINE = Memory;
INSERT INTO json_square_brackets FORMAT JSONAsString [{"id": 1, "name": "name1"}, {"id": 2, "name": "name2"}];

SELECT * FROM json_square_brackets;
Response
┌─field──────────────────────┐
│ {"id": 1, "name": "name1"} │
│ {"id": 2, "name": "name2"} │
└────────────────────────────┘

Настройки формата

Последнее изменение 10 июня 2026 г.