码迷,mamicode.com
首页 > 数据库 > 详细

【转】一道SQL SERVER DateTime的试题

时间:2014-12-07 12:33:22      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:sp   bs   as   nbsp   sql   学习   br   ca   字符串   

学习过上一篇SQL SERVER DateTime精度的文章后。再来做一道题。

IF (‘2011-07-31 00:00:00.000‘ BETWEEN ‘2011-07-01‘ and ‘2011-07-31 ‘)
PRINT ‘Yes‘
ELSE
PRINT ‘No‘

结果是什么,如果你认为是Yes,那么你就上当了,哈哈。因为这不是两个日期类型在比较,这就是两个字符串在比较。

所以结果当然是NO。

如果要进行比日期比较,应该进行类型转换,如下比较:

IF (CAST(‘2011-07-31 00:00:00.000‘ AS DATETIME) 
BETWEEN CAST(‘2011-07-01‘ AS DATETIME) 
  AND CAST(‘2011-07-31‘ AS DATETIME))
PRINT ‘Yes‘
ELSE
PRINT ‘No‘

这一结果就是Yes了。

 

这也是在网上看到的,觉得有趣,就贴过来了。仅供大家学习。呵呵。

【转】一道SQL SERVER DateTime的试题

标签:sp   bs   as   nbsp   sql   学习   br   ca   字符串   

原文地址:http://www.cnblogs.com/gates/p/4149262.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!