Saya sarankan Anda melihat Fungsi String MySQL dan lebih khusus lagi SUBSTRING_INDEX
fungsi. Alasan saya menyarankan yang ini lebih dari SUBSTRING
karena angka sebelum atau sesudah garis miring mungkin lebih dari satu angka yang akan membuat panjang bagian pertama dan/atau kedua berbeda.
Contoh:
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;
Hasil:
Contoh Tambahan
Dalam contoh ini, saya menggunakan CAST
untuk mengubah bagian kedua menjadi bilangan bulat yang tidak ditandatangani untuk berjaga-jaga jika mengandung karakter tambahan seperti simbol atau huruf. Dengan kata lain, bagian kedua dari "web-4/15." akan menjadi "15" dan bagian kedua dari "web-4/15****" juga akan menjadi "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;