I BY-Daten in der folgenden Reihenfolge bestellen möchten:ORDER BY Alphanumeric Art
- Nummer-Nummer
- Alpha-Nummer
- Alpha ohne Bindestrich
Ich habe folgendes sort:
- 120-1
- 120-2
- 120-10
- Digitale-1
- Digitale-10
- Digitale-2
- Hochzeit
Dies ist die Reihenfolge, die ich suche, außer Die Digitaleinträge (Alpha mit Bindestrich) sind nicht nach dem Bindestrich nach Zahlen sortiert.
Nach vielen Versuchen, hier ist meine aktuelle SQL-Anweisung:
SELECT SessionID, Identifier FROM Session
ORDER BY
CASE
WHEN CAST(Identifier AS INTEGER) THEN SUBSTR(Identifier,0, INSTR(Identifier, '-')) + CAST(SUBSTR(Identifier, INSTR(Identifier, '-')+1, 999) AS INTEGER)
ELSE Identifier END
Was mache ich falsch?
Danke.
Und welche Ausgabe erhalten Sie anstelle der erwarteten Reihenfolge? – Murphy
Die Liste unter 'Ich habe die folgende Art:'. Alles funktioniert außer der Digital (Alpha mit Strich) ist nicht nach Nummer aufgelistet. – rkamarowski
können Sie regexp verwenden? –