在我的localhost
我有Mysql 5.7,在我的服务器中我有MariaDB 10.2.7。
我有一些json
字段,我希望按json
值中的一个字段对记录进行排序,我在google和stackoverflow中搜索,因此我使用此查询:
SELECT id , CONVERT(JSON_EXTRACT(name, '$."fa-IR"') USING utf8) COLLATE utf8_persian_ci AS cName FROM `users` ORDER BY cName ASC
示例数据:
id | Name
-----+-------------------
1 | {"fa-IR":"\u062a\u0633\u062a","en-US":"Test"}
此函数在我的localhost(MySQL)中没有任何问题但在服务器(MariaDB)中无法正常工作我的意思是我的记录无法正确排序并显示分解!
答案 0 :(得分:0)
不要将Unicode提供给MySQL。尤其不适用于\u
。
在您的客户端使用UTF-8编码,然后将MySQL配置为使用utf8
(或utf8mb4
)。