Comment classer par ordre numérique avec MySQL ?
Réponses rédigées par Antoine
Dernière mise à jour : 2022-01-05 10:58:41
Question
Comment faire pour classer des chiffres par ordre numérique avec MySQL de telle manière à obtenir comme résultat : 1, 2, 3, 4, 5 etc., et pas 1, 10, 2, 20, 3 etc.
Réponse
Pour effectuer une requête SELECT, et classer les résultats par ordre numérique, vous pouvez convertir les résultats en entier binaire avec la fonction CAST et les propriétés UNSIGNED et INTEGER, puis utiliser la fonction ORDER BY.
SELECT * FROM table ORDER BY CAST(colonne AS UNSIGNED INTEGER) ASC
Remarque : Il est préférable que la colonne soit au format INT, TINYINT, MEDIUMINT, ou BIGINT.