Низът в MySQL има набор от знаци и съпоставяне . Utf8 е наборът от знаци, а utf8_bin е едно от неговите съпоставяния. За да сравните своя низов литерал с колона utf8, преобразувайте го в utf8, като му поставите префикс с нотацията _charset:
_utf8 'Something'
Сега съпоставянето е валидно само за някои набори от знаци. Регистърътчувствителен сортирането за utf8 изглежда utf8_bin, което можете да посочите като:
_utf8 'Something' collate utf8_bin
С тези преобразувания заявката трябва да работи:
select * from page where pageTitle = _utf8 'Something' collate utf8_bin
Префиксът _charset работи с низови литерали. За да промените набора от символи на поле, има CONVERT ... ИЗПОЛЗВАНЕ. Това е полезно, когато искате да преобразувате полето pageTitle в друг набор от знаци, както е в:
select * from page
where convert(pageTitle using latin1) collate latin1_general_cs = 'Something'
За да видите знака и съпоставянето за колона с име 'col' в таблица, наречена 'TAB', опитайте:
select distinct collation(col), charset(col) from TAB
Списък с всички набори от знаци и съпоставяне може да бъде намерен с:
show character set
show collation
И всички валидни съпоставяния за utf8 могат да бъдат намерени с:
show collation where charset = 'utf8'