MySQL에서 JSON 데이터 검색
JSON으로 인코딩된 데이터가 포함된 레코드를 MySQL 데이터베이스에 삽입했으며 해당 데이터 내에서 검색해야 합니다. 그러나 제공된 SQL 쿼리가 원하는 결과를 반환하지 않습니다. MySQL 버전 5.7에 도입된 JSON 추출 기능을 활용하는 솔루션을 살펴보겠습니다.
MySQL 5.7의 JSON 추출
MySQL 버전 5.7 이상에서 JSON 추출 기능은 다음을 제공합니다. JSON 값에서 데이터를 탐색하고 검색하는 강력한 방법입니다. 그러한 함수 중 하나인 JSON_EXTRACT를 사용하면 특정 키를 대상으로 하고 해당 값을 추출할 수 있습니다.
JSON_EXTRACT를 쿼리에 적용
attribs_json 필드 내에서 특정 키를 검색하려면 -값 쌍의 경우 JSON_EXTRACT를 다음과 같이 사용할 수 있습니다. 다음:
SELECT id, JSON_EXTRACT(attribs_json, "$.feature.1.value") AS matching_value FROM products WHERE JSON_EXTRACT(attribs_json, "$.feature.1.value") REGEXP '\[[^"]*3[^"]*\]'
설명:
이 쿼리는 "feature" 개체의 "1" 키에 "3"이 포함되지 않은 값이 있는 모든 행을 반환합니다. 제공된 데이터에 대해 ["2"] 및 ["2", "1"]의 "1" 값이 있는 행을 일치시킵니다.
결론
MySQL의 JSON 추출 기능을 활용하면 JSON으로 인코딩된 필드에 저장된 데이터를 효과적으로 검색하고 액세스할 수 있습니다. JSON_EXTRACT 함수는 특정 값을 추출하고 JSON 데이터에 대해 복잡한 필터링 작업을 수행하는 유연하고 효율적인 방법을 제공합니다.
위 내용은 JSON_EXTRACT를 사용하여 MySQL에 저장된 JSON 데이터를 효과적으로 검색하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!