当查询某个日期类型的字段时,如果该字段中有空的值,怎么在查询时把所有空的值替换成当前时间.
比如原始查询出来的结果为:
id date
----------------------------
1 2010-12-1 11:11:11
2
3 2010-12-2 11:11:11将查询结果改为:
id date
----------------------------
1 2010-12-1 11:11:11
2 2010-12-10 11:30:00(当前日期)
3 2010-12-2 11:11:11
比如原始查询出来的结果为:
id date
----------------------------
1 2010-12-1 11:11:11
2
3 2010-12-2 11:11:11将查询结果改为:
id date
----------------------------
1 2010-12-1 11:11:11
2 2010-12-10 11:30:00(当前日期)
3 2010-12-2 11:11:11
NVL2 (expr1, expr2, expr3) :xpr1不为NULL,返回expr2;为NULL,返回expr3。expr2和expr3类型不同的话,expr3会转换为expr2的类型
SELECT 1 id,To_Date('2010-12-1 11:11:11','yyyy-mm-dd hh24:mi:ss') rq FROM dual
UNION ALL
SELECT 2,NULL FROM dual UNION ALL
SELECT 3, To_Date('2010-12-2 11:11:11','yyyy-mm-dd hh24:mi:ss') FROM dual
)
--以上是测试数据
SELECT id ,Nvl(rq,sysdate) rq FROM tabID RQ
--------------------------
1 2010.12.01 11:11:11
2 2010.12.10 11:34:03
3 2010.12.02 11:11:11
select nvl(date,sysdate) from tablename;select nvl('',sysdate) from dual;NVL('',SYSDATE)
-------------------
2010-12-10 11:37:24