4

我正在寻找 UTF8 的 MySQL 排序规则,它不区分大小写并区分“a”和“ä”(或更一般地说,在变音/重音字符及其“纯”形式之间)。utf8_general_ci前者,utf8_bin后者,bot none 两者都做。WHERE如果没有这样的排序规则,我该怎么做才能在子句中尽可能接近?

4

4 回答 4

7

我的建议是utf8_bin在您的 WHERE 子句中使用 and ,将比较的两边强制为大写或小写。

于 2010-01-11T19:21:53.540 回答
0

它在这里工作正常,utf8_german2_ci作为排序规则:

SELECT * FROM tablename WHERE fieldname LIKE "würz%" COLLATE utf8_german2_ci
于 2017-03-02T11:33:59.867 回答
0

utf8_bin这样检查

CREATE TABLE tmp2 (utf8_bin VARCHAR(20) CHARACTER SET utf8 COLLATE utf8_bin);
INSERT INTO tmp2 VALUES ('nói');

select * from tmp2 where utf8_bin='noi';
于 2017-07-29T09:09:51.197 回答
-1

您可以尝试utf8_swedish_ci,它既不区分大小写,又区分aä(但将例如ü视为y)。

排序规则依赖于语言,似乎 German在 MySQL中没有自己的排序规则。(我看了你的个人资料,上面写着你是德国人。)

于 2010-10-10T17:13:53.643 回答