Résolu [MSSQL] Tri d'une colonne

Solutions (4)
Tags :
  • chaine
  • Programmation
|
Bonjour,

la question peut paraitre simple à prmière vue mais voila : je veux faire un tri sur un champs !
Le problème est qu'il ne tri pas "correctement".

Je m'explique : les valeurs de mon champs sont de cette forme : VarAlphaUtil, VarAlphaUtil2, VarAlphaUtil3, ..., VarAlphaUtil10, VarAlphaUtil11, ..., VarAlphaUtiln.

Lorsque je fais un order by, il me met les champs de cette manière :
VarAlphaUtil
VarAlphaUtil10
VarAlphaUtil11
VarAlphaUtil2
VarAlphaUtil3
VarAlphaUtil4

Or, en toute logique, je veux qu'il soit de cette forme :
VarAlphaUtil
VarAlphaUtil2
VarAlphaUtil3
VarAlphaUtil4
...
VarAlphaUtil10
VarAlphaUtil11

Auriez vous une solution pour régler ce petit problème ?

D'avance merci,
@+
Contenus similaires
Meilleure solution
partage
|
Malheureusement non, il n'y a pas de solution simple. C'est une chaine de caractères, donc a10 passe avant a2.
Ou bien, tu peux ajouter un tri sur la longueur de la chaine:
ORDER BY LENGTH(champ) ASC, champ ASC
  • Commenter cette solution |
Score
0
òh
òi
|
Perfect :) 
  • Commenter cette réponse |
Score
0
òh
òi
|
Meilleure réponse sélectionnée par DivX_666.
  • Commenter cette réponse |
Score
0
òh
òi
|
Parfait !! J'avais pas du tout penser à ca !

Juste un truc : ce n'est pas LENGTH, mais LEN pour récupérer la longueur.
  • Commenter cette réponse |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS