Ik heb een tabel met indexen (als strings) die er zo ongeveer uit zien:
id_subid, enz
zoals bijvoorbeeld:
4_3
of
10_4
Het is de bedoeling dat deze indexen worden gesorteerd. Zolang de indexen niet groter zijn dan 9 gaat dit natuurlijk goed maar zo gauw ze 10 of hoger zijn gaat het fout (omdat 10, 11 etc dan VOOR 1,2,3 komt).
Nu kwam ik op het idee om dan de string te splitten op het '_'-karakter echter kom ik er niet uit hoe je dit in MySql voor elkaar moet krijgen in de query. De index bestaat uit maximaal twee getallen; dus er komt 1 keer een '_'-karakter voor alleen is niet bekend waar dit karakter staat zodat ik ook niet een deel van de string kan uitlezen en daarop kan sorteren.
Of is er nog een andere manier om dit te kunnen sorteren? Voor alle cijfers 2 karakters gebruiken (04 ipv 4) gaat eigenlijk niet op omdat ik dan opnieuw moet indexeren en bovendien kan het later mogelijk zijn dat het 3 karakters moeten worden.
id_subid, enz
zoals bijvoorbeeld:
4_3
of
10_4
Het is de bedoeling dat deze indexen worden gesorteerd. Zolang de indexen niet groter zijn dan 9 gaat dit natuurlijk goed maar zo gauw ze 10 of hoger zijn gaat het fout (omdat 10, 11 etc dan VOOR 1,2,3 komt).
Nu kwam ik op het idee om dan de string te splitten op het '_'-karakter echter kom ik er niet uit hoe je dit in MySql voor elkaar moet krijgen in de query. De index bestaat uit maximaal twee getallen; dus er komt 1 keer een '_'-karakter voor alleen is niet bekend waar dit karakter staat zodat ik ook niet een deel van de string kan uitlezen en daarop kan sorteren.
Of is er nog een andere manier om dit te kunnen sorteren? Voor alle cijfers 2 karakters gebruiken (04 ipv 4) gaat eigenlijk niet op omdat ik dan opnieuw moet indexeren en bovendien kan het later mogelijk zijn dat het 3 karakters moeten worden.