[MySQL] Ordre de tri de type numérique alors que c'est une chaine

Le
Roumegou Eric
Bonjour,

ça fait 15 mn que je cherche ds google et je ne trouve pas.
En mysql, j'ai besoin par une requete en sql de trier pour charger une
combo.

J'ai des valeurs 1,2,3,.,10,11 dans une valeur chaine.
Comment écrire mon order by pour avoir 1,2,3,etc au lieu de
1,10,11,2,3,

je cherchais une sorte de NumériqueVersChaine en mysql mais je ne
trouve pas. Peut être y'a t-il un moyen de changer le mode de tri ausi.

Merci de vos réponses.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Firetox
Le #14515531
Bonjour,

il faut caster le resultat

select cast(Macolonne as integer) as num from matable
order by num asc

voici l'aide mysql
http://dev.mysql.com/doc/refman/5.0/fr/cast-functions.html

bon dev
@+

"Roumegou Eric" news:
Bonjour,

ça fait 15 mn que je cherche ds google et je ne trouve pas.
En mysql, j'ai besoin par une requete en sql de trier pour charger une
combo.

J'ai des valeurs 1,2,3,....,10,11 dans une valeur chaine.
Comment écrire mon order by pour avoir 1,2,3,etc au lieu de
1,10,11,2,3,...

je cherchais une sorte de NumériqueVersChaine en mysql mais je ne trouve
pas. Peut être y'a t-il un moyen de changer le mode de tri ausi.

Merci de vos réponses.




Roumegou Eric
Le #14515521
Après mûre réflexion, Firetox a écrit :
Bonjour,

il faut caster le resultat

select cast(Macolonne as integer) as num from matable
order by num asc

voici l'aide mysql
http://dev.mysql.com/doc/refman/5.0/fr/cast-functions.html

bon dev
@+




Merci Fred,

J'ai eu du mal avec l'integer mais cela a marché comme ceci

select distinct cast(RES_BASECLAST as unsigned) as
groupe,concat('Groupe ',RES_BASECLAST) AS GROUPE FROM PEOPLE_RESULT
where pod_id4
and coalesce(people_result.RES_OKCLAST,0)=1
order by groupe
Publicité
Poster une réponse
Anonyme