Я ищу MySQL-сортировку для UTF8, которая нечувствительна к регистру и различает «a» и «ä» (или, в более общем плане, между umlauted/акцентированных персонажей и их «чистой» формы). utf8_general_ci
делает первый, utf8_bin
последний, бот нет. Обе. Если такого сопоставления нет, что я могу сделать, чтобы как можно ближе подойти в предложении WHERE
?Ищите регистр без учета регистра MySQL, где «a»! = «Ä»
3
A
ответ
6
Моей рекомендацией было бы использовать utf8_bin
и в вашем предложении WHERE закрепить обе стороны вашего сравнения в верхнем или нижнем регистре.
-1
Вы можете попробовать utf8_swedish_ci
, это как чувствительно к регистру и различает и ä (но лечит, например, ü как у).
Коллажи зависят от языка, и, похоже, немецкий язык не имеет собственного collation in MySQL. (Я посмотрел на свой профиль, который говорит, что ты немец.)
0
здесь прекрасно работает с utf8_german2_ci
в комплектовке:
SELECT * FROM tablename WHERE fieldname LIKE "würz%" COLLATE utf8_german2_ci
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';
аккуратным. Благодаря :-) – Simon