我有一个像下面这样的要求,其中“”中的文字是从用户传递的
如果用户选择“TutteleAttività”,则不会对此进行过滤。 如果用户选择“SoloAttivitàsenzaImpatto EHS”,则JOBPLAN.PRIORITY = null或JOBPLAN.PRIORITY<> 9 如果用户选择“SoloAttivitàconImpatto EHS”,那么JOBPLAN.PRIORITY = 9
我写了以下代码: 条件......
AND (('Tutte le Attività' = (:IMP))
OR ('Solo Attività senza Impatto EHS' = (:IMP) and TAB1.PRI IS NULL OR TAB1.PRI NOT IN ('9'))
OR ('Solo Attività con Impatto EHS' = (:IMP) and TAB1.PRI IN ('9')))
IMP是绑定变量。
由于某种原因,第二个条件正在失败。
我的代码是对吗?
答案 0 :(得分:0)
AND
优先于OR
。所以你需要更多的括号:
OR ('Solo Attività senza Impatto EHS' = :IMP
and (TAB1.PRI IS NULL OR TAB1.PRI NOT IN ('9'))
)