In het algemeen, utf8_general_ci is sneller dan utf8_unicode_ci , maar minder correct.
Hier is het verschil:
Voor elke Unicode-tekenset zijn bewerkingen die worden uitgevoerd met de _general_ci-sortering sneller dan die voor de _unicode_ci-sortering . Vergelijkingen voor de utf8_general_ci-sortering zijn bijvoorbeeld sneller, maar iets minder correct, dan vergelijkingen voor utf8_unicode_ci. De reden hiervoor is dat utf8_unicode_ci toewijzingen zoals uitbreidingen ondersteunt; dat wil zeggen, wanneer een karakter gelijk is aan combinaties van andere karakters. In het Duits en sommige andere talen is "ß" bijvoorbeeld gelijk aan "ss". utf8_unicode_ci ondersteunt ook samentrekkingen en negeerbare karakters. utf8_general_ci is een legacy-sortering die geen uitbreidingen, samentrekkingen of negeerbare tekens ondersteunt. Het kan alleen één-op-één vergelijkingen maken tussen karakters.
Geciteerd van:http://dev.mysql. com/doc/refman/5.0/en/charset-unicode-sets.html
Lees voor een meer gedetailleerde uitleg het volgende bericht van MySQL-forums:http:/ /forums.mysql.com/read.php?103,187048,188748
Wat betreft utf8_bin:Beide utf8_general_ci en utf8_unicode_ci hoofdletterongevoelige vergelijking uitvoeren. Daarentegen is utf8_bin hoofdlettergevoelig (onder andere verschillen), omdat het de binaire waarden van de karakters vergelijkt.