Huhu!
Ich glaube, wenn Du da eine ganz normale ORDER BY-Klausel nutzen möchtest, kriegst Du das nicht hin. So eine Funktion mit der Du da irgendwie reguläre Ausdrücke einbauen wie Du Dir vorstellst, gibt es, glaub ich, nicht.
SELECT * FROM tabelle ORDER BY Spaltenname
würde allerdings funktionieren und zwar ganz ohne RegEx. Es würde Dir das Zeug in alphanumerischer Reihenfolge präsentieren.
Also
'Vertrag endet am 07.06.12' vor 'Vertrag startet am 08.07.01'
wegen e in endet und s ind startet.
Ich glaube, so wie Du das hier notierst, klappt das sogar mit den Daten.
Es ist allerdings wichtig, dass Du das Datumsformat JJ.MM.TT wählst!
Beste Grüße
~ Thilo