Mailinglisten-Archive |
So sprach Thomas Bach am Wed, Jun 13, 2001 at 10:41:37AM +0200: > hmmm, wäre es dann aber nicht besser, die umlaute durch a, o resp. u zu > ersetzen (anstelle ae, oe & ue), dann würde nämlich gerade korrekt sortiert Und wie geht's dann wieder zurück? Mal davon abgesehen, das dann nicht korrekt sortiert würde - gut, nicht mehr so katatrophal wie es jetzt ist, aber immer noch nicht richtig (richtig: Wie's im Telefonbuch steht) Also so: 1. Müller 1. Mueller 3. Muller Bei Dir käme raus: 1. Mueller 2. Müller 2. Muller Oder noch "schlimmer": 1. Müller 1. Mueller 2. Müllez 3. Muller vs. Deines: 1. Muller 1. Müller 2. Müllez 3. Mueller (Das {1,2,3}. gehört natürlich nicht zum String) Im Telefonbuch wird nämlich nicht zwischen ü und ue unterschieden. Dh. es findet *für die Sortierung* eine Auflösung von ü nach ue statt. Kann man in MySQL replace() bei ORDER BY anwenden? Dann dürfte wohl richtig sein: SELECT Namen FROM Tbl ORDER BY replace(replace(replace(replace(replace(replace(replace( Namen, 'ß', 'sz'), 'ü', 'ue'), 'ö', 'oe'), 'ä', 'ae'), 'Ü', 'Ue'), 'Ö', 'Oe'), 'Ä', 'Ae') Also, 7 ineinander geschachtelte REPLACE's - für jeden Buchstaben ein Replace. Nicht elegant und wohl auch nicht performant, aber was anderes fällt mir nicht ein, wenn man in MySQL bleiben will... Alexander Skwar -- How to quote: http://learn.to/quote (german) http://quote.6x.to (english) Homepage: http://www.digitalprojects.com | http://www.iso-top.de iso-top.de - Die günstige Art an Linux Distributionen zu kommen Uptime: 20 hours 37 minutes --- !!NEU!! Fragen und Antworten zu MySQL und dieser Liste unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive