Varchar nombre de conversion pour le tri
J'ai une requête commandé par column
:
select * from mytable order by column asc — sort table
column
est de type varchar, de sorte que la sortie est:
1
10
100
11
12
13
Comment dois-je trier si je veux les trier par la valeur numérique de sorte que la sortie est:
1
10
11
12
13
100
- expliquer votre question mieux. Et pourquoi ne pas travailler pour vous.
- Il ne fonctionne pas parce que la colonne de type varchar et il veut les trier en fonction de la valeur numérique. N'était pas bien difficile...
Vous devez vous connecter pour publier un commentaire.
Utilisation:
Vous pouvez l'utiliser si vous voulez traiter
column
commeINT
seulement:Ou si vous voulez traiter
column
que les deuxINT
etVARCHAR
Cela devrait fonctionner ainsi:
Si on se contente de modifier la commande, par déclaration légèrement (ajouter "+0" à la commande par champ), vous pouvez forcer MySQL à trier le champ naturellement.
sélectionnez * à partir de varchar_sort commande par convertir( remplacer(actual_user_id, '-',"), ENTIER SIGNÉ ) asc