MySQL-Unicode-Sortierungen: Umlaut-Äquivalenz verstehen
Die Beobachtung, dass MySQL „åäö“ als gleichbedeutend mit „AAO“ ansieht, hat seinen Ursprung in der Verwendung von nicht sprachspezifische Unicode-Sortierungen. Wie in der MySQL-Dokumentation angegeben, standardisieren Kollatierungen dieses Typs die Handhabung von Unicode-Zeichen, einschließlich Umlauten.
Insbesondere gelten in Kollatierungen wie utf8_general_ci und utf8_unicode_ci die folgenden Gleichheiten:
Diese „Funktion“ stellt sicher, dass bei Vergleichen und Suchen bestimmte Zeichen unabhängig von ihrer Spezifität als gleichwertig behandelt werden Unicode-Codepunkte.
Um dieses Problem zu mildern, haben Sie zwei Hauptoptionen:
select * from topics where name='Harligt' COLLATE utf8_bin;
Es ist wichtig zu beachten, dass es komplexer ist, eine Suche ohne Berücksichtigung der Groß-/Kleinschreibung bei gleichzeitiger Beibehaltung der Umlautunterscheidung zu erreichen. Wenn eine geeignete MySQL-Sortierung existiert, die diese Kriterien erfüllt, wäre ihre Existenz von Interesse.
Das obige ist der detaillierte Inhalt von## Wie geht MySQL mit Umlauten in Unicode-Sortierungen um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!