Partage
  • Partager sur Facebook
  • Partager sur Twitter

order by supérieur à

Sujet résolu
    22 juin 2017 à 21:33:42

    bonjour 

    j'ai un select qui me renvoie une table du genre 

    id_client client nb_inter

    1             a        5

    2             c        0

    3             b        2

    4             d        0

    5             e        3

    je souhaiterai trier par la colonne nb_inter tout se qui est supérieur à 0 puis  par nom client est ce possible?

    order by nb_inter, client ne me convient pas je voudrais afficher toutes les nb_inter > 0  en premier dans l'ordre alphabetique de client ensuite les nb_inter par ordre alphabetique =0 du genre suivant :

    id_client client nb_inter

    1             c        0

    2             d        0

    3             a        5

    4             b        2

    5             e        3

    -
    Edité par david@321 22 juin 2017 à 21:34:24

    • Partager sur Facebook
    • Partager sur Twitter
      22 juin 2017 à 23:24:24

      Bonjour,

      SELECT *, IF( nb_inter > 0, 1, 0 ) AS tri
      FROM matable
      ORDER BY tri, nb_inter
      • Partager sur Facebook
      • Partager sur Twitter
      Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
        23 juin 2017 à 18:55:27

        Tu peux faire

        ORDER BY nb_inter>0 DESC, nom_client

        Le truc c'est que "nb_inter>0" est bien évidemment un BOOL, or FALSE (0) est inférieur à TRUE (qui vaut 1) donc si tu mets "ORDER BY nb_inter>0" et bien les FALSE (donc ayant nb_inter pas >0) seront en premier.

        Toi tu veux l'ordre inverse, c-à-d nb_inter>0 en premier, donc t'ajoutes juste un DESC pour que le booléen TRUE soit avant le FALSE, et puis voilà.

        -
        Edité par Lord Casque Noir 23 juin 2017 à 18:56:59

        • Partager sur Facebook
        • Partager sur Twitter

        order by supérieur à

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown