programing

MySQL과 Maria의 JSON_SEARCH 차이DB

goodcopy 2022. 12. 7. 00:13
반응형

MySQL과 Maria의 JSON_SEARCH 차이DB

저는 단지 가치의 경로를 얻으려고 할 뿐입니다.JSON_SEARCH기능:

SELECT JSON_SEARCH('[12, 13, {"12": 123}]', 'one', '123', null, '$[*]') path;

MariaDB에서 이 쿼리를 실행하면 작동하며 원하는 결과를 얻을 수 있습니다.

+===========+
| path      |
+===========+
| "$[2].12" |
+-----------+

그러나 상위 MySQL 8.0에서 동일한 쿼리를 실행하며 NULL을 받았습니다.

그래서 MySQL에서 사용하기 위해 쿼리를 일치시키는 방법이 필요합니다.

버그 #79233: JSON_SEARCH는 문자열 이외의 값을 검색하지 않습니다.

JSON 스칼라 값이 스트링인 경우 다음 정보를 찾을 수 있습니다.

mysql> SELECT JSON_SEARCH('[12, 13, {"12": "123"}]', 'one', '123', null, '$[*]') path;
                                           ^^^^^ quoted string value
+---------------+
| path          |
+---------------+
| "$[2].\"12\"" |
+---------------+

언급URL : https://stackoverflow.com/questions/68882785/json-search-difference-in-mysql-and-mariadb

반응형