在语句的情况下,如何在where子句中输出'is null'?

时间:2018-03-21 15:53:50

标签: sql oracle

查询检查参数 foo 的值,该参数由程序内的下拉列表传递。如果该参数包含特定值,则属性应仅包含空值。没有pl / SQL我可以管理吗?

select * from table t
where case when $foo$ = 'yes' then t.something is null end

2 个答案:

答案 0 :(得分:1)

你的意思是这个逻辑吗?

select something 
from table t
where ($foo$ = 'yes' and t.something is null) or ($foo != 'yes')

答案 1 :(得分:0)

只需使用nvl功能:

select * 
  from mytable t
 where nvl($foo$,'yes') = 'yes';