SQL order by

Résolu
widi70 Messages postés 646 Date d'inscription   Statut Membre Dernière intervention   -  
Pilow Messages postés 410 Statut Membre -
Bonjour j'ai un petit soucis
Dans une de mes table SQL j'ai un colonne chose:
qui à été déclaré en TEXT
Alors bien entendu je peut trouver de tout dans cette colonne numéro, texte,...

Alors lorsque j'affiche cette colonne je sait au préalable si ça sera des chiffres ou des lettres que je veut afficher.
J'aimerais que lorque j'affiche des numéros, il se range par ordre croissant, mais malheureusement ça ne veut pas puisque c'est un champs text donc il se range comme ceci
100
15
220
24

alors que j'aimerais
15
24
100
220

Y'a t'il une solution???
Merci
Configuration: Windows XP
Firefox 3.0.16

3 réponses

  1. Pilow Messages postés 410 Statut Membre 71
     
    bonjour

    Si tu met :

    ORDER BY LEN(ton_champ), ton_champ ASC

    PS : je n'ai pas testé, je propose, il faut peut-être le modifier un peu
    0
  2. widi70 Messages postés 646 Date d'inscription   Statut Membre Dernière intervention   65
     
    Bonjour et merci de ton aide
    Moi je dit BRAVO !!!!! pour l'idée !!!!!!

    Donc avec LEN je n'ai pas réussi mais j'ai utilisé CHARACTER_LENGTH
    Ce qui donne
    ORDER BY CHARACTER_LENGTH(mon_champs),mon_champs ASC

    Merci bcp et encore bravo
    0
  3. Pilow Messages postés 410 Statut Membre 71
     
    Re-bonjour

    J'etais pas sur de l'utilisation de len ^^

    A ton service a plus
    0