DB

[DB][MySQL] JSON_TABLE()

오선지♬ 2025. 10. 26. 10:10
728x90
반응형

✅ 1. JSON_TABLE() — JSON 배열을 행(row)으로 펼치는 함수

📌 용도

테이블 안에 JSON 형식으로 들어 있는 배열 데이터를
정규 테이블처럼 행 단위로 꺼내 쓸 수 있게 만드는 함수.

📌 예제 테이블

product (
    product_id INT,
    tags JSON   -- 예: {"items":[{"id":"1","name":"전자"},{"id":"3","name":"가전"}]}
)

📌 JSON_TABLE 사용 예

SELECT 
    p.product_id,
    jt.id AS tag_id,
    jt.name AS tag_name
FROM product p
CROSS JOIN JSON_TABLE(
    p.tags,
    '$.items[*]'
    COLUMNS (
        id VARCHAR(10) PATH '$.id',
        name VARCHAR(100) PATH '$.name'
    )
) AS jt;

📌 결과

product_id tag_id tag_name
100 1 전자
100 3 가전

📌 한줄 요약

👉 JSON 안의 배열 → 테이블처럼 행으로 변환

728x90
반응형