Bonjour,
J'expose mon problème. J'ai une table avec 3 champs : ch1 (commencant par S0 ou B0), ch2 et ch3.
Je souhaite faire une query sql suivant cette logique:
si ch1<= X and ch2 is null alors afficher ch3
sinon si ch1>X and ch1 like 'B0%' alors afficher 3
sinon rien
J'hésite entre decode, faire des jointures ou case.
Ci-joint deux exemples que j'ai commencé à écrire:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 select decode(ch1, (<='X' and ch2 is null), ch3, (>'X' and ch1 like 'B0%'), ch3, NULL) from tableAvez-vous une idée pour effectuer un sql correct?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 select CASE when ch1 <='X' and ch2 is null then ch3 when ch1 >'X' and ch1 like 'B0%' then ch3 else null end qty from table
Merci







Répondre avec citation






Partager