목록json (2)
HelloKoKo

bigint type 검색시에 문제점이 발생했다. int 형으로 뒷자리가 잘려서 검색 되는 문제가 발생하여. bigint 검색시엔 JSON_CONTAINS 함수 말고 JSON_SEARCH를 이용하는것이 좋겠다. int 형으로 검색시엔 문제가 발생하지 않았다. set @json = '{"a":[782945677938082108, 782945677938082092]}'; select JSON_CONTAINS(@json, '782945677938082000', '$.a'); 결과 JSON_CONTAINS 결과 값이 true 값으로 나온다. 원래는 0 (false)가 나와야한다. MySql mysql 에서는 정상적으로 작동하는 것을 확인하였다. # 참고 https://mariadb.com/kb/en/json_c..

실행 환경: MariaDB array 안에 object 형식으로 들어가 있는 경우 검색하는 방법이다. json_extract를 사용하여 height value 를 추출한후 json_search를 통해서 검색 해내는 방법이다. SET @json_document = '{ "name": "ab", "specs": [{ "weight": 10, "height": "as" }, { "weight": 101, "height": "as1" }] }'; SELECT JSON_SEARCH(JSON_EXTRACT(@json_document, '$.specs[*].height'), 'all', "as") is not null; 결과 결과 값이 있을 경우 1, 없을 경우 0으로 검색 된다.