如何在oracle sql中将null值设置为default

jda*_*mae 2 sql oracle null

如何将空集或空值设置为默认值,如1?

到目前为止,我有这个声明,但如果我得到空值我想要处理:

select case when count(*)=0 
                   then 0 
                 else 1 
                   end OUTPUT 
from TESTTBL 
where timestamp = to_char(sysdate-1, 'yyyymmdd')||'0000';
Run Code Online (Sandbox Code Playgroud)

小智 5

你的意思是检查Null值并设置为默认值,如果是的话

select nvl(column_name,'DEFAULT') from TESTBL where timestamp = to_char(sysdate-1,   'yyyymmdd')||'0000';
Run Code Online (Sandbox Code Playgroud)


ype*_*eᵀᴹ 5

SELECT CASE WHEN EXISTS
                   ( SELECT * 
                     FROM TESTTBL 
                     WHERE timestamp = to_char(sysdate-1, 'yyyymmdd') || '0000'
                   )
            THEN 1
            ELSE 0
       END AS OUTPUT
FROM dual                     
Run Code Online (Sandbox Code Playgroud)

编辑

添加FROM dual为Oracle不允许SELECT没有FROM子句.