数据库 
首页 > 数据库 > 浏览文章

SQL Server 比较日期大小的方法

(编辑:jimmy 日期: 2025/1/9 浏览:3 次 )

在机房收费系统中,有几处这样的情况:
SQL Server 比较日期大小的方法

起始日期和终止日期,相信聪明的你肯定可以想象出为什么要有两个日期控件!是的,就是从一张表中查找出在这两个日期范围类的记录!

有的人就说了,这还不简单!

假如我们将第一个控件定义成Begin,第二个控件定义成Over!那么查询语句不就是
复制代码 代码如下:
"select * from recharge_info where date<'" & over.value & "' and date>'" & begin.value & "'" 

这有什么难的!但是,事实并不是这么简单的,如果查询语句像这样写的话,你是肯定查找不出来的,那么我们到底该怎能在SQL Server中来比较两个日期的大小呢?
这里我们就要借用CONVERT()函数了
CONVERT() 函数是把日期转换为新数据类型的通用函数。
CONVERT() 函数可以用不同的格式显示日期/时间数据。
语法:CONVERT(data_type(length),data_to_be_converted,style)
其中,data_type(length)规定目标数据类型(带有可选的长度)data_to_be_converted 含有需要转换的值 style规定日期时间的输出格式
其中,可使用的style值:

SQL Server 比较日期大小的方法

例如:

复制代码 代码如下:
print convert(varchar(19),getdate()) 
print convert(varchar(10),getdate(),110) 
print convert(varchar(11),getdate(),106) 
print convert(varchar(24),getdate(),113) 


结果如下:

SQL Server 比较日期大小的方法

如果你在SQL Server中用到根据日期查找记录的话,如果你用date='2013-09-22' 这样的查询语句的时候,但是你仍然能查出你想要的结果的时候,请记住:这并不是你所想的表中记录的日期等于现在的日期,而是表中日期这个字符串和'2013-09-22'这个字符串相等!

上一篇:sql注入数据库修复的两种实例方法
下一篇:SQL多表连接查询实例分析(详细图文)
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。