数据库操作时指定空数据显示信息

整理了一下办公电脑的桌面,发现一个文本文件,里面是一条select语句,忽然想起前些天副组长说的复习SQL语句时的要求,他是随便找了一个表,然后看到里面有日期,提出如下要求:

要求输出这个表的时候,如果日期为空,要求输入一个指定的日期,如果不为空,则输出原来的日期。

说明这个函数,下面构造一个小表吧:

表名 :“T” ,

字段一:“BH”,编号

字段二:“RQ”,日期

按照上面要求,使用的函数是 isnull ,然后得到的select语句是:

select BH,isnull(RQ, '2010-1-21 13:05:00')  from T;

但是这样还是出错,因为是日期型记录日期字段,所以还要有固定的格式,使用格式转换函数to_data,所以得到的SQL语句是:

select BH,isnull(RQ, to_data('2010-1-21 13:05:00','yyyy-MM-dd HH:mi:ss'))  from T;

这样,就能正确执行了,而且也符合要求,但是企业设计,使用的是Oracle数据库,使用的函数并不是isnull,在Oracle里相对应的函数是nvl,如下:

select BH,nvl(RQ, to_data('2010-1-21 13:05:00','yyyy-MM-dd HH:mi:ss'))  from T;

大体解决这个要求的思路就是这样子,由于这里网络原因,这几天没法连上数据库再测试一遍,如有错误,请提出,共同探讨。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>