Jeg vil foreslå, at du ser på MySQL-strengfunktionerne a> og mere specifikt SUBSTRING_INDEX
fungere. Grunden til, at jeg foreslår denne over SUBSTRING
er fordi tallet før eller efter skråstreg kan være mere end et enkelt tal, hvilket ville få længden af den første og/eller anden del til at variere.
Eksempel:
SELECT `info`,
SUBSTRING_INDEX(`info`, '/', 1) AS `first_part`,
SUBSTRING_INDEX(`info`, '/', -1) AS `second_part`
FROM `table`
ORDER BY `first_part` ASC,
`second_part` ASC;
Resultat:
Yderligere eksempel
I dette eksempel bruger jeg CAST
at konvertere den anden del til et heltal uden fortegn, hvis det indeholder yderligere tegn såsom symboler eller bogstaver. Med andre ord, anden del af "web-4/15." ville være "15" og anden del af "web-4/15****" ville også være "15".
SELECT `info`,
SUBSTRING_INDEX(`info`, '/', 1) AS `first_part`,
CAST(SUBSTRING_INDEX(`info`, '/', -1) AS UNSIGNED) `second_part`
FROM `table`
ORDER BY `first_part` ASC,
`second_part` ASC;