Основната разлика е точността на сортиране (при сравняване на знаци на езика) и производителността. Единственият специален е utf8_bin, който е за сравняване на знаци в двоичен формат.
utf8_general_ci
е малко по-бърз от utf8_unicode_ci
, но по-малко точен (за сортиране). Кодирането на специфичен език utf8 (като utf8_swedish_ci
) съдържат допълнителни езикови правила, които ги правят най-точни за сортиране за тези езици. През повечето време използвам utf8_unicode_ci
(Предпочитам точността пред малките подобрения в производителността), освен ако нямам основателна причина да предпочитам конкретен език.
Можете да прочетете повече за конкретни набори от символи в Unicode в ръководството за MySQL - http://dev.mysql.com/doc/refman/5.0/en/charset-unicode-sets.html