如果SELECT语句中为空

时间:2013-06-25 14:49:46

标签: sql oracle select

我想在if MOPACTIVITY.MOPSERVICEIMPACTED is = Null运行SELECT语句,然后使用MOPACTIVITY.MOPOTHER字段。

我会将此作为案例陈述吗?语法是什么样的?

3 个答案:

答案 0 :(得分:4)

使用coalesce:

select coalesce(MOPACTIVITY.MOPSERVICEIMPACTED, MOPACTIVITY.MOPOTHER)
  from ...

您可以使用CASE语句执行此操作:

select case when MOPACTIVITY.MOPSERVICEIMPACTED is not null then MOPACTIVITY.MOPSERVICEIMPACTED
            else MOPACTIVITY.MOPOTHER
       end
  from ...

答案 1 :(得分:2)

您不需要案例,nvl就足够了(假设您要检查的列是varchar2):

select
    nvl(MOPACTIVITY.MOPSERVICEIMPACTED, MOPACTIVITY.MOPOTHER)
    ...

答案 2 :(得分:0)

声明@c1 varchar(10)= NULL 选择@ c1为null时的情况,然后选择'asasasas',否则@ c1结束