MySql:返回“的排序规则/字符集”;Mü;“nchen”;至于;Munchen“;同时";G和xF6;teborg“;至于;G和xF8;teborg“;
我有一个网站,挪威用户应该能够搜索城市名称。 慕尼黑市被保存为“慕尼黑”。 哥德堡市被储存为“哥德堡”MySql:返回“的排序规则/字符集”;Mü;“nchen”;至于;Munchen“;同时";G和xF6;teborg“;至于;G和xF8;teborg“;,mysql,character-encoding,collation,Mysql,Character Encoding,Collation,我有一个网站,挪威用户应该能够搜索城市名称。 慕尼黑市被保存为“慕尼黑”。 哥德堡市被储存为“哥德堡” 使用挪威键盘的用户在搜索“Munchen”时会键入“Munchen”。 这是因为挪威人不经常使用u,他们会键入键盘上最接近的字母u 他们在搜索“哥德堡”时会键入“哥德堡”。这是同一个字母,但在挪威语和瑞典语中看起来不同。 这也适用于带有ä而不是æ的城市 排序测试 ut8\u常规\u ci Munchen会给Munchen的。 哥德堡不会给哥德堡 拉丁语和瑞典语 Munchen不会给Munche
Ø
被视为O
和p
之间的字母。utf8冰岛语和utf8土耳其语中的。utf8_german2_ci将其视为等同于oe
和œ
。其他人把它等同于o
排序规则的问题在于没有一种排序规则适用于所有语言。utf8_unicode_ci和utf8_unicode_520_ci可能是最好的折衷方案。即便如此,这两种方法在处理Ø
时也有所不同
ä=æ
仅适用于utf8_german2_ci。斯洛伐克将ä
视为一个单独的字母;其余的说ä=a
如果你想要西欧以外的名字,就不应该使用拉丁文1
没有排序规则将处理哥德堡
=哥德堡
。所以,你真正需要的是一张交替拼写的表格。有了这张桌子,你可以和挪威人等(更糟糕的是,还有美国人)一起解决这个问题