Masalah:
Rutin pengisihan MySQL mungkin tidak menyediakan susunan isihan yang diingini untuk nombor versi yang disimpan sebagai varbinari(300). Isih perlu mengambil kira sehingga 20 digit dan menghasilkan keputusan seperti:
1.1.2 1.2.3.4 2.2 3.2.1.4.2 3.2.14 4 9.1
Penyelesaian:
Gunakan fungsi INET_ATON dengan pertanyaan berikut:
SELECT version_number FROM table ORDER BY INET_ATON(SUBSTRING_INDEX(CONCAT(version_number,'.0.0.0'),'.',4))
Teknik ini memanfaatkan keupayaan INET_ATON untuk menukar alamat IP kepada integer. Dengan menambahkan .0.0.0 pada nombor versi dan mengekstrak hanya empat komponen pertama menggunakan SUBSTRING_INDEX, kami menterjemah nombor versi ke dalam perwakilan integer yang setanding.
Pertimbangan Tambahan:
Atas ialah kandungan terperinci Bagaimanakah saya boleh menyusun nombor versi MySQL dengan betul?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!