1 如果是作为控制条件: --aa为变量 if aa is null then ... end if;2 如果是sql语句: --aa为列名 select decode(aa,null,'当空时要填充的内容','非空时内容','默认内容') from yourtable3 如果作为sql语句中的条件: select ... from tablename where aa is null and ... 可以综合以上三者处理各种空值比较问题
if nvl(aa,'0')=0 then dbms_output.putline('字符串为空'); end if;
declare v_aa varchar2(10); begin v_aa := null; v_aa := ''; if v_aa is null or v_aa = '' then dbms_output.put_line('空'); end if; end;
case when 表列名 IS NULL THEN 表达式 WHEN 。 THEN 。 ELSE ENDNVL(列名,值)--列名为空取参数二 DECODE()。
不能只用一条AA IS NULL 来判断哦
--aa为变量
if aa is null then
...
end if;2 如果是sql语句:
--aa为列名
select decode(aa,null,'当空时要填充的内容','非空时内容','默认内容') from yourtable3 如果作为sql语句中的条件:
select ... from tablename where aa is null and ...
可以综合以上三者处理各种空值比较问题
dbms_output.putline('字符串为空');
end if;
v_aa varchar2(10);
begin
v_aa := null;
v_aa := '';
if v_aa is null or v_aa = '' then
dbms_output.put_line('空');
end if;
end;
THEN 表达式
WHEN 。
THEN 。
ELSE
ENDNVL(列名,值)--列名为空取参数二
DECODE()。