카테고리 없음

MySQL JSON

denny 2025. 3. 19. 09:25

MySQL의 JSON 타입에서 특정 name 값을 가진 command를 조회하려면 JSON_EXTRACT() 또는 ->> 연산자를 사용할 수 있어.

📌 쿼리 예제

SELECT JSON_UNQUOTE(JSON_EXTRACT(json_column, '$.command')) AS command
FROM your_table
WHERE JSON_UNQUOTE(JSON_EXTRACT(json_column, '$.name')) = '21j3kl21';

또는 더 간단하게 ->> 연산자를 사용할 수도 있어(MySQL 5.7+ 지원).

SELECT json_column->>'$.command' AS command
FROM your_table
WHERE json_column->>'$.name' = '21j3kl21';

🔹 실행 예시

📌 테이블 예제 (your_table)

id json_column

1 {"name":"21j3kl21","command":"//add 4005501 100"}
2 {"name":"other","command":"//add 5001102 50"}

📌 실행 결과

command

//add 4005501 100

✅ JSON_EXTRACT() 또는 ->>를 사용하여 JSON 내부 값을 필터링
✅ name이 "21j3kl21"인 command 값을 조회 🚀