sqlserver 中时间为空的处理小结
程序员文章站
2023-12-15 12:25:22
现将几种主要情况进行小结: 一、如何输入null值 如果不输入null值,当时间为空时,会默认写入"1900-01-01",在业务处理时很麻烦。 ctrl+0即可输入nul...
现将几种主要情况进行小结:
一、如何输入null值
如果不输入null值,当时间为空时,会默认写入"1900-01-01",在业务处理时很麻烦。
ctrl+0即可输入null值。
二、如何在sql语句中判断为null的时间字段
假设表为:testtable
sn datetime1 datetime2
1 2011-10-24 2011-10-25
2 null 2011-10-26
3 2011-10-25 null
用case进行查询,若写成:
select (case datetime1 when null then 'a' else 'b' end) from testtable
则查询结果为:
b
这显然不是想要的结果;需要写成:
select (case datetime1 when datetime1 then 'b' else 'a' end) from testtable
其查询结果才为:
a
这才是想要的结果。
一、如何输入null值
如果不输入null值,当时间为空时,会默认写入"1900-01-01",在业务处理时很麻烦。
ctrl+0即可输入null值。
二、如何在sql语句中判断为null的时间字段
假设表为:testtable
sn datetime1 datetime2
1 2011-10-24 2011-10-25
2 null 2011-10-26
3 2011-10-25 null
用case进行查询,若写成:
select (case datetime1 when null then 'a' else 'b' end) from testtable
则查询结果为:
b
这显然不是想要的结果;需要写成:
select (case datetime1 when datetime1 then 'b' else 'a' end) from testtable
其查询结果才为:
a
这才是想要的结果。