【发布时间】:2015-09-23 10:03:31
【问题描述】:
我有一个代码,我需要在where 子句中使用多个参数
使用条件运算符。
我已经编写了以下查询,在这种情况下我不能使用in clasue。
请指导我如何从 case 子句返回多个参数。
select * from cardimport
where
STATUS = CASE
WHEN STATUS = ''
THEN 'F'
ELSE STATUS
END
当null 中的状态时,我想返回'F' 和'V'。现在它只返回'F'
已编辑
select *
from CARDIMPORT
where STATUS = CASE
WHEN $P{status} = ''
THEN 'E'
ELSE $P{status}
END
当状态为空时,我想显示所有状态的记录,即'E','I','A'
【问题讨论】:
-
这里的条件应该是错误的 status =status 显示所有不为空的记录。为什么需要两个值
-
@Kirman88 - 向我们展示输入和所需的输出。
-
您能否显示示例表数据并显示您想要的结果。您应该使用“IS NULL”来检查 null,而不是 =''。 STATUS 是表中的一列吗?
-
@Kirmani88 参数在哪里?您的查询根本不涉及任何参数。
-
@MukeshKalgude 啊!我没有看到OP两边都有列名,我认为它是运算符左侧的参数。