我有一个有日语单词的数据库。我很困惑,因为这个问题:
SELECT japanese
FROM my_table
where japanese = 'する'返回两个结果:
ずる
する我试图查看文档,但不知道发生了什么或如何纠正它。下面是有关我使用文档中推荐的查询的设置的一些信息:
SELECT CHARACTER_SET_NAME, DESCRIPTION
FROM INFORMATION_SCHEMA.CHARACTER_SETS
WHERE DESCRIPTION LIKE '%Japanese%'
ORDER BY CHARACTER_SET_NAME;返回:
'CHARACTER_SET_NAME','DESCRIPTION'
'cp932', 'SJIS for Windows Japanese'
'eucjpms', 'UJIS for Windows Japanese'
'sjis', 'Shift-JIS Japanese'
'ujis', 'EUC-JP Japanese'以及以下查询:
SHOW VARIABLES LIKE 'char%'返回:
character_set_client utf8mb4
character_set_connection utf8mb4
character_set_database utf8mb4
character_set_filesystem binary
character_set_results utf8mb4
character_set_server utf8mb4
character_set_system utf8这真的超出了我的能力范围。如果有人能给我指明正确的方向,那将是一个很大的帮助。
谢谢。
发布于 2019-07-27 12:52:21
您应该使用对口音敏感的排序规则:
SELECT japanese
FROM my_table
where japanese = 'する' COLLATE utf8mb4_ja_0900_as_cs;
-- alternatively binary collation: COLLATE utf8mb4_bincs校勘: 在MySQL 8.0.0中,我们增加了新的重音和不区分大小写(ai_ci)排序规则,从而改进了字符集的支持。在MySQL 8.0.1中添加了相应的重音和区分大小写的排序规则(as_cs)以及日语排序规则
https://stackoverflow.com/questions/57232294
复制相似问题