Bonjour,
Je suis en train de reprendre un vieux code développé dans mon entreprise.
L'absence de commentaires ne facilite pas les choses, et je suis tombé sur des parties un peu curieuse, des genres de tautologies qui me laissent perplexes.
Aussi, j'aimerai avoir votre avis si vous pensez que ca peut influencer quelque part les perfs ou si c'est complètement inutile et que je peux donc m'en débarrasser.
Voici les deux cas que j'ai trouvés :
Quelle est l'utilité dans ce cas du NVL ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part DECODE(NVL(PP.PPRO_NO_FUP,' '),'1','Y','N')
Morceau de code dans un select :
La condition AND PROC_TAR_CODE = PROC_TAR_CODE me laisse perplexe. J'imagine que c'est peut etre pour filtrer les valeurs nulles, mais dans ce cas, un where PROC_TAR_CODE is not null ne serait il pas plus efficace ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 (SELECT CASE WHEN MAX(PROC_GROSS_PREMIUM_100) > 0 THEN 'Y' ELSE 'N' END FROM AD_PROPOSAL_COVERS WHERE PROC_APV_PROP_REFERENCE = APVP_PROP_REFERENCE AND PROC_APV_VERSION_NUMBER = APVP_PROP_VERSION AND PROC_APVP_PLAN_NUMBER = APVP_PLAN_NUMBER AND PROC_TAR_CODE = PROC_TAR_CODE AND PROC_PBB_NUMBER IN (106, 107)) AS "LAWYER_EXP" ,
Est ce que c'est moi qui trouves ces parties un peu bizarres, ou est ce que de votre point de vue aussi elles le sont ? Y aurait il une raison d'un point de vue perf d'avoir fait ca ?
Merci d'avance pour vos réponses.
Steven
Partager