私は列からJSON形式のデータを検索するためにjson_search使用しています。このコマンドを実行することはできません。通常のjsonデータの場合、正常に動作しています。しかし、文字列に二重引用符がある場合は機能しません。
MySQLのクエリjson_search - #2014 - 同期のうちコマンド。あなたは今
SELECT JSON_SEARCH(user_information, 'one', '%name%', null, '$[*].label');
これは、正規のJSONデータのための細かい作業だが、それは、単一の列のデータベースに格納されたデータ以下のために働いていません。作業されていないクエリに
データ例:
[{
"name":"John Smith",
"value":"John",
"label":"Sm"ith"
}]
をここでは、この例のdb-fiddleです。
データでわかるように、ラベルキーの文字列はsm"ith
です。文字列の真ん中にダブルクォートを追加しただけで、db-fiddleのエラーの下に表示されます。機能json_searchの引数1で は
しかし、私のローカルホスト上で、エラーの下に見せています。無効JSONテキスト: "オブジェクトメンバ後 カンマまたは '}' がありません。"
2014 - 同期してコマンド。
私は、[DB-フィドル](https://www.db-fiddle.com/f/49UDVFsyHEazRvC6Lyb25q/0)を参照して、問題を再現することはできません。 – wchiquito
@wchiquito私は問題を再現しました。特殊文字のせいではありませんでした。文字列に二重引用符が追加されたためでした。私は質問を更新しました。私もdb-fiddleを作成しました。リンクはこちらですhttps://www.db-fiddle.com/f/8T39N3B4R8jZgn3vyG6cCQ/0 – Onkar