ホームページ  >  記事  >  データベース  >  sqlserver 中时间为空的处理小结

sqlserver 中时间为空的处理小结

WBOY
WBOYオリジナル
2016-06-07 18:02:571167ブラウズ

sql server中常常需要使用DateTime类型的字段。当此类型字段值为空时,常常出现各种异常

现将几种主要情况进行小结:
一、如何输入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

这才是想要的结果。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。