以下のように、日本語がキーに使われているJSON型カラムを持つデータベースで、
mysql> SELECT * FROM hoge;
+----+----------------------------------------+
| id | payload |
+----+----------------------------------------+
| 1 | {"日本語": "にほんご"} |
| 2 | {"英語": "えいご"} |
| 3 | {"フランス語": "ふらんすご"} |
+----+----------------------------------------+
3 rows in set (0.00 sec)
キーを指定して検索すると、エラーになる時がある。
mysql> SELECT * FROM hoge WHERE payload->'$.日本語' = 'にほんご';
ERROR 3143 (42000): Invalid JSON path expression. The error is around character position 11.
キーをクオートで括ることで解決。
mysql> SELECT * FROM hoge WHERE payload->'$."日本語"' = 'にほんご';
+----+-------------------------------+
| id | payload |
+----+-------------------------------+
| 1 | {"日本語": "にほんご"} |
+----+-------------------------------+
1 row in set (0.00 sec)