case when (NVl(to_char(DTFINISHDATE,'yyyy-mm-dd'),'')<>'')
then 0 else 1 end LngStutas,这里的DTFINISHDATE是空日期型的.
用什么简单的方法就能判断,这是个空日期??
then 0 else 1 end LngStutas,这里的DTFINISHDATE是空日期型的.
用什么简单的方法就能判断,这是个空日期??
解决方案 »
- 写一条sql语句、要求简洁并效率高。
- 新手请教,oracle创建表的问题
- oracle连接远程数据库的问题
- Oracle序列重置的问题
- oracle job 问题
- Oracle92 里面怎么为表加时间戳?
- 求未用的最小ID值的SQL语句
- unix系统下oracle9i用命令行方式怎样建数据库,谢谢大家参与?
- 如何判断字段中的内容为空值?我用isnull(字段名)=true提示出错
- 数据库迁移的问题
- 高手回答:Oracle中有没有类似SQL Server中DTS的东西
- log报"已经完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入",但什么数据都没导入(dmp文件正常)
NVl(DTFINISHDATE,'2999-12-31')oracle真不会搞,要是Sqlserver就简单了
这样简单处理一下就行了:
select decode(DTFINISHDATE,null,1,0) from tab;
SQL> declare
2 is_date date;
3 check_date date :=to_date('29990101','yyyymmdd');
4 begin
5 if nvl(is_date,check_date) = check_date then
6 DBMS_OUTPUT.PUT_LINE('date is null!');
7 elsif nvl(is_date,check_date) <> check_date then
8 DBMS_OUTPUT.PUT_LINE('date is not null!');
9 end if ;
10
11 end;
12 /date is null!