SQLServer根据时间段查询数据

Posted 蓝鲸blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLServer根据时间段查询数据相关的知识,希望对你有一定的参考价值。

今天一同事发现一个SQLServer语句执行特别慢,检查后发现是 条件 加上了 时间段 ,之前使用的是  时间字段 between xxx and xxx这样的方式,遂更改时间判断方法,

----------dafediff----------返回两个时间点的差,可选单位 yy,mm,dd,hh,ss等

查询今年的数据  :

select * from datediff(yy,时间字段,getdate())=0

查询2016年的数据:

select * from datediff(yy,时间字段,‘2016‘)=0

----------dafepart----------截取一个时间点的某单位,列如截取年或者月或者天,可选单位 yy,mm,dd,hh,ss等

查询某段时间的数据,例如 2016年2月到2016年12月:

select * from datediff(yy,时间字段,‘2016‘)=0 and datepart(mm,时间字段)>=2 and datepart(mm,时间字段)<=12

以上是关于SQLServer根据时间段查询数据的主要内容,如果未能解决你的问题,请参考以下文章

sqlserver 数据库查询一个时间段根据年月日三个字段,注意是三个字段

使用 SQL Server 进行性能调优

winformconfig文件连服务器数据库启动很慢

sqlserver 在数据查询时是按时间顺序排列的 在时间字段上还有必要加聚集索引吗 为啥

sql server多个表统计查询

SQLSERVER如何在数据库里根据某个字段,查出该表名字