Collation ist die Zeichensatzsortierung, sprich ob im verwendeten Zeichensatz das ä vor dem a kommt oder umgekehrt. Daher gibt es auch verschiedene Kollationen für ein und den selben Zeichensatz. Wie das grundlegend funktioniert, zeigt dieser sehr gute und einfach zu verstehende (deutsche)
Artikel aus dem MySQL-Manual.
Sehr gutes Beispiel (von
Is2: Information Space Reloaded): bei
utf8_bin ist
music=MUSIC, was natürlich ziemlich bescheuert ist, aber bei einem Vergleich von Binärdaten (z.B. als HEX) ziemlich furzegal ist (
FEEF ist nunmal einfach das selbe wie
feef in HEX).
Letztlich muss also jeder von Fall zu Fall selbst entscheiden, welche Kollation verwendet werden soll. Um genau herauszufinden, welche Kollation für euch die beste ist, könnt ihr euch hier einen Überblick verschaffen:
Mimer SQL Developers - Unicode Collation Charts.
Das Dumme dabei ist, dass sich die MySQL-Realität (also die Implementierung) und der Mimer-Artikel unterscheiden, also kommt man hier leider um eine weitere Recherche kaum herum. MySQL ist zu diesem Thema auch nicht besonders gesprächig...
Grundsätzlich solltet ihr aber unbedingt ein gewisses Grundwissen über Unicode und generell über Charsets haben. Da gibt es einige gute Artikel, aber nur einen den man gelesen haben MUSS ;-) :
The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) - von "Joel on Software"
Puh, ich hoffe das reicht ;-)