Case/When/Then.. Select de plusieurs valeurs calculées
Bonjour,
J'ai plusieurs calculs différents à faire selon si une donnée (largeur) est 0 ou autre.
Dans mon cas j'utilise plusieurs fois de suite la clause "Case" mais je ne trouve pas cela très élégant. J'aimerai si possible regrouper tous mes calculs dans une seule clause "Case".
Auriez-vous d'autres propositions plus élégantes svpl?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
Case
when att.LARG = '0' then att.DIAME
else att.LARG
end Lg_Dia,
Case
when att.LARG = '0' then (v.MULTIPLY_FACTOR*PDE.PDE_FINAL_QUANTITY_SU*1000)/(att.SECTION_VAL*att.PDS_SPECIF_VAL)
else (v.MULTIPLY_FACTOR*PDE.PDE_FINAL_QUANTITY_SU*1000)/(att.LARG*att.EPAIS*att.PDS_SPECIF_VAL)
End m,
-- j'aimerai récupérer la valeur "m" dans le calcul si dessous, mais cela ne va pas pourquoi ?
sum(m*att.LARG/1000) m2, |
Merci d'avance