메인 콘텐츠로 건너뛰기
입력출력별칭

설명

이 포맷에서는 단일 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"} │
└────────────────────────────┘

포맷 설정

마지막 수정일 2026년 6월 10일