[RESOLU] tri sur 2 colonnes avec NULL

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] tri sur 2 colonnes avec NULL

Re: tri sur 2 colonnes avec NULL

par Spols » 27 sept. 2012, 15:11

Merci j'ai testé et cherché voici la requète qui fonctionne
SELECT [les champs necéssaire], IF(c2 <=> NULL,0,1) AS c3
FROM [table]
WHERE [condition(s)]
ORDER BY c3 ASC, c1 ASC
Merci bien

Re: tri sur 2 colonnes avec NULL

par Mazarini » 27 sept. 2012, 11:17

Ajoutes une troisième colonne if isnull(c2) then 0 else 1 end as c3 et tri sur cette colonne en premier.

(la syntaxe est approximative, mais avec la doc mysql tu dois pouvoir t'en sortir)

tri sur 2 colonnes avec NULL

par Spols » 26 sept. 2012, 19:14

Bonjour à tous,

J'ai un résultat de requète que je shématise ci dessous

Code : Tout sélectionner

c1 c2 ______ 44 NULL 45 44 46 44 47 44 48 NULL 49 46 50 44 51 48
Je voudrais trouver la clause ORDER BY qui me permettra de les trier comme ceci
les NULL de la 2ème colonne en premier, suivi d'un classement par la première colonne.

Le problème est que pour avoir les NULL en premier je dois mettre un c2 ASC mais il me trie les non null aussi ce qui m'empèche de faire mon tri sur c1
Je voudrais obtenir :

Code : Tout sélectionner

c1 c2 ______ 44 NULL 48 NULL 45 44 46 44 47 44 49 46 50 44 51 48
et non pas

Code : Tout sélectionner

c1 c2 ______ 44 NULL 48 NULL 45 44 46 44 47 44 50 44 49 46 51 48
Merci à ceux qui aurait une réponse à me soumettre