Tri par ordre croissant avec sql

bonjour à tous,
je voudrai faire un tri par ordre croissant sur les 3 dernieres lettres du champ
ex:
toto001
tata005
ffff002
resultat:toto001
ffff002
tata005
je travaille en php avec mysql
easy or not easy?

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. merci a tous les deux
    j'utilise des fonctions sql dans php et apparement
    order by RIGHT(nom,3) ne fonctionne pas.
    De plus je fais des modifs sur un site en fonctionnement
    donc je ne peux pas trop ma lacher!
    a+++
    1. je vois rien de simple

      Astuce:
      separes ton champs en 2 champs (1 de n lettres et 1 de 3 lettres) et tries sur le 2ème
      1. Ben y'a une fonction right si ma memire est bonne, enfin un truc du genre quoi...
        En tout cas, je pense qu'il faut passer par le php parce que le SQL va eter trop juste...

        .  .
        \_/
        1. select mon_champ, right(mon_champ, 3) as dernieres_lettres from matable order by dernieres_lettres asc
          1. Je n'ai pas testé, mais bien vu ;-)
          2. @Bobinoursmoi non pu, j'ai pas teste :D
            mais y a pas de raison que ca marche pas :)
          3. @wiwimagiquemoi j'ai teste et malheureusement ça marche pas.
            il me met une erreur a proximité du RIGHT.
            Peut etre est ce parce que je travaille dans un fichier en .phtml
            (d'apres ce que j'ai compris ,c'est une extention permettant d'utiliser des includes dans des éditions de PHP anciennes.
            (Pas sûr du tout)
        2. ça marche même sous cette forme :

          select mon_champ from matable order by right(mon_champ, 3) asc