SQL Server 比较日期大小的方法

所属分类: 数据库 / MsSql 阅读数: 1663
收藏 0 赞 0 分享

在机房收费系统中,有几处这样的情况:

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

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

假如我们将第一个控件定义成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值:

例如:

复制代码 代码如下:

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

更多精彩内容其他人还在看

SQL Substring提取部分字符串

SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分。这个函数的名称在不同的资料库中不完全一样
收藏 0 赞 0 分享

用户"sa"登陆失败 SQLServer 错误18456的解决方法

sqlserver下用sa登录提示18456错误的解决方法。
收藏 0 赞 0 分享

drop,truncate与delete的区别

这里说的delete是指不带where子句的delete语句
收藏 0 赞 0 分享

SQL语句查询数据库中重复记录的个数

一个sql语句:一个表test有四个字段id,a,b,c,如果表中的记录有三个字段a,b,c都相等,则说明这条记录是相同的,求相同的记录的个数 。
收藏 0 赞 0 分享

SQL 导入导出Excel数据的语句

从Excel文件中,导入数据到SQL数据库中,很简单
收藏 0 赞 0 分享

可以获取客户端的IP地址的sql语句

利用SQL语句得到客户端的IP地址的代码
收藏 0 赞 0 分享

SQL 根据汉字获取全拼的代码

SQL 根据汉字获取全拼(有些字还没有添加上去,请自已加上去,涂聚文注)
收藏 0 赞 0 分享

sqlserver exists,not exists的用法

exists,not exists的使用方法示例,需要的朋友可以参考下。
收藏 0 赞 0 分享

sqlserver substring函数使用方法小结

在操作sqlserver时候用到了substring函数,特整理一些实例,需要的朋友可以参考下。
收藏 0 赞 0 分享

sql 判断数据库,表,存储过程等是否存在的代码

sql下用了判断各种资源是否存在的代码,很实用。需要的朋友可以参考下。
收藏 0 赞 0 分享
查看更多