Salut, je suis sous Oracle 10G,
J'ai deux possibilités de tri et je veux mettre ça dans un ORDER BY.
Je dois utiliser un DECODE ou bien un CASE ?
Ma variable est V_ORDRE.
Les deux ne fonctionnent pas à cause je crois du ORDER BY sur plusieurs colonnes et non sur juste une.
Auriez-vous une solution ?
Je dois faire un ORDER BY sur quelques colonnes de la table selon V_ORDRE :
Ou bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT * FROM ABC WHERE ID = V_ID ORDER BY DECODE(V_ORDRE,1, (NO_EMP, NO_SOCIAL, ADRESSE) V_ORDRE,2, (NO_SOCIAL, NOM, PRENOM)
Merci beaucoup !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT * FROM ABC WHERE ID = V_ID ORDER BY CASE V_ORDRE = 1 THEN (NO_EMP, NO_SOCIAL, ADRESSE) V_ORDRE = 2 THEN (NO_SOCIAL, NOM, PRENOM) END
Partager