Dla utf8_general_ci są one równe (z wyjątkiem ł, które MySQL nie uważa za błąd), a od wersji 5.6 można również używać utf8_unicode_520_ci, który poprawnie obsługuje wszystkie polskie znaki. Użyj utf8_polish_ci, aby traktować znaki akcentowane i nieakcentowane jako różne.
select 'abcde'='ąbćdę' COLLATE utf8_polish_ci
>> 0
Demo „nie jest to błąd”
select 'abcde'='ąbćdę' COLLATE utf8_general_ci
>> 1
select 'abcdel'='ąbćdęł' COLLATE utf8_general_ci
>> 0
Zobacz raport o błędzie tutaj:http://bugs.mysql.com/bug.php ?id=9604