Peter: ORDER BY mit Umlauten

Beitrag lesen

Hi,

habe eine Tabelle "strassen", deren Inhalt ich alphabetisch (oder heißt das jetzt alfabetisch???) geordnet ausgeben will:

*********************************
SELECT strassen.id,strassen.name FROM strassen ORDER BY strassen.name
*********************************

Allerdings bringt mir das die Umlaute an der falschen Stelle, z.B.:

-Aberweg
-Allerstraße
-Adelweg
-Affenstraße
-Azemutstraße
-Ächterweg

Ich möchte die Umlaute aber bei z.B. "Ae" eingeordnet haben, also in der Reihenfolge:

-Aberweg
-Allerstraße
-Adelweg
-Ächterweg
-Affenstraße
-Azemutstraße

Habe meine Abfrage jetz folgendermaßen umgeschrieben:

*********************************
SELECT strassen.id,strassen.name FROM strassen ORDER BY REPLACE(REPLACE(REPLACE(REPLACE(LOWER(strassen.name),'ä','ae'),'ö','oe'),'ü','ue'),'ß','ss')
*********************************

Wandle also den String erstmal in Kleinbuchstaben um,
im Rückgabewert ersetz ich "ä" durch "ae",
in dem Rückgabewert wiederum ersetz ich "ö" durch "oe" ... usw.

Kommt mir recht aufwändig und nicht sehr elegant vor.
Ne Funktion, mit der ich alles auf einmal ersetzen kann oder etwas ähnliches hab ich auch nicht gefunden.

Gibts da eventuell elegantere Lösungen ?

Wäre für eure Hilfe oder fachmännische Beurteilungen / Kritik an meinem Lösungsansatz dankbar.

Gruß
Peter