SQL vers expression booléenne
Hello les gens,
Je ne suis pas certain de poster au bon endroit mais si je peux avoir une réponse sur le forum c'est bien sur celui d'SQL j'espère.
Voila j'ai une requête avec des conditions qui devraient être dans le where et j'aurais aimé convertir la condition un peu à la manière où un :
devient:
Code:
((Not A) or B) AND (A or C)
Mes conditions à moi seraient plutôt:
Code:
1 2
| IF (P_V_TYPE='DAOPCVM') THEN ( (YEAR(TIME_REQUEST)= L_I_ANNEE_DAOPCVM AND HEADER.TYPE='DAOPCVM') OR (YEAR(DATE_H)= L_I_ANNEE_DAOPCVM AND HEADER.TYPE='DA'))
ELSE IF (P_V_TYPE='DA') THEN ((YEAR(DATE_H)= L_I_ANNEE AND HEADER.TYPE='DA') OR (YEAR(TIME_REQUEST)= L_I_ANNEE AND HEADER.TYPE='DAOPCVM'))ELSE (YEAR(DATE_H)= L_I_ANNEE AND SUBSTR(HEADER.TYPE , 1, 2)=SUBSTR(P_V_TYPE , 1, 2)) |
Ce qui pourrait être simplifié en IF A THEN B ELSE IF C THEN D ELSE E
Ce qui devient alors:
Code:
(not A or B) and (A or ((not C or D) and (C or E)))
J'ai tout bon ?
Merci pour toutes vos contributions.