Bonjour,

j'ai un tri bizard a faire

ma table :
nom,prenom,actif,free
actif et free sont des booleens.

je voudrais une liste sur cette table comme suivant :
les actifs non free par ordre alphabetique suivi des inactifs non free par ordre alphabetique et pour finir, les free par ordre alphabetique.

Ce que je fais

rien encore, je cherche

8 réponses


Pierrot01
Auteur
Réponse acceptée

@jinou, pas de problème ;)
La solution était laà pour ceux que ça pourrais intéresser :

select 
    nom,
    prenom,
    initiale,
    actif,
    free,
    case 
        when free = true then 3 
        when actif = true then 0
        when actif = false then 1
    end as ordretri  
from utilisateurs order by ordretri,nom

ce qui donne ça :



Bon courage à tous.
et merci pour ceux qui on tenté de m'aider.

@plus
Pierre

order by actif , free asc

ce serai trop simple ;)
çq fait 1 plombe que j'y suis, alors tu imagines bien que j'ai essayé en sachant très bien que ce n'était pas ça.

@plus

Pierre

As tu essayé en couplant avec un GROUP BY ?

j'veux pas les regrouper !!
@plus
Pierre

Premièrement, essaie d'être un peu plus courtois. Jusque là tes messages son d'un sec sans précédent.

Pour ton problème, l'erreur vient de toi, car les solutions de mes collègue sont les bonnes.

Tu fais 3 requetes. Une avec les actif non free par ordre asc ensuite les inactifs non free puis les free.
Ou alors tu as mal fait ton énoncé et tu nous envoie dans le mur.

@Jinou, nan, mes réponses ne sont pas sèches ;)
c'est toi qui les prend comme ça :D
L'erreur vient de moi ???
comment ça ?
comment est-ce possible puisque je ne fais rien :D :D
De plus, les solutions de tes collegues ne sont pas les bonnes ;)
j'ai tester order by actif , free asc et ca donne ca :

si j'ajoute le nom dans l'order by, c'est pas bon non plus

Ta solution fonctionnera certainement, mais je peu aussi faire une usine à gaz :D :D
c'est pas grave, je suis sur la voie de trouver.
Merci quand même ;)
@plus.
Pierre

ps : cette réponse n'est pas sèche, j'peux même livrer un seau d'eau avec :D :D

En fait je pense que tu as mal expliqué ce que tu voulais faire. Car ce que tu explique au premier post, la solution tu l'as.
Donc essaie de plus détaillé ce que tu souhaites.

PS : Désolé d'avoir cru que tes réponse étaient sèches, mais j'avais mon cahouet :/