Bonjour,
Voila je rencontre un petit problème avec mon code.
Je souhaite trier un résultat avec plusieurs critéres et des conditions
J'ai une table sql comme ceci :
uc1 nbr_ddc_uniques_tlrv last_tr69
1115800000268 84 2019-04-12
2115800000269 243 2019-04-31
3115800000270 0 2019-04-19
4115800000271 63 2019-04-05
Et je souhaite la faire resortir comme ceci :
uc1 nbr_ddc_uniques_tlrv last_tr69
2115800000269 243 2019-04-31
4115800000271 63 2019-04-05
1115800000268 84 2019-04-12
3115800000270 0 2019-04-19
Pour ce faire, j'aimerais trier en faisant cette condition :
Tant que nbr_ddc_uniques_tlrv
>= 100, Trier nbr_ddc_uniques_tlrv
du plus grand au plus petit, puis dés que nbr_ddc_uniques_tlrv
< 100, trier par last_tr69
du plus petit au plus grand.
Ce qui représente, si je la faisait en php :
if(`nbr_ddc_uniques_tlrv` >= 100) { `nbr_ddc_uniques_tlrv` DESC } else { ``last_tr69`` ASC }
J'ai cherché et trouvé des possiblités avec CASE
ou IF
. Mais je n'arrive pas à les faire fonctionné.
Avez vous des idées ?
Merci
Du coup j'ai trouvé avec une collégue :
ORDER BY case when nbr_ddc_uniques_tlrv >=100 then nbr_ddc_uniques_tlrv end desc, case when nbr_ddc_uniques_tlrv < 100 then last_tr69 end asc
;)