我正在尝试在IN
子句中使用where
语句,我写了以下语句,并给出了missing right parenthesis
错误消息。我有谷歌,但无法找到相关的解决方案。
问题出现在以下语句中,当我使用单个参数时它可以正常工作,但是当我在THEN子句中使用多个参数时,它会给出错误消息。
我正在使用iReport
请指导我如何在THEN
子句
select ...
from ..
WHERE
STATUS IN
CASE
WHEN $P{status} is not null THEN ($P{status}, ' ')
WHEN $P{status} is null THEN ('V', 'R')
END
and ..
答案 0 :(得分:1)
将您的逻辑更改为简单的布尔比较:
WHERE ( $P{status} is not null AND STATUS IN ($P{status}, ' ') ) OR
( $P{status} is null AND STATUS IN ('V', 'R') )