在做Sql Server开发的时候有时需要获取表中今天、昨天、本周、上周、本月、上月等数据,这时候就需要使用DATEDIFF()
函数及GetDate()
函数了。
DATEDIFF ( datepart , startdate , enddate )
释义:计算时间差 datepart值:year | quarter | month | week | day | hour | minute | second | millisecond
startdate:开始日期
enddate :结束日期GetDate()
释义:获取当前的系统日期
下面例子中表名为dept
,条件字段名为create_date
查询今天
SELECT * FROM dept where DATEDIFF(day,create_date,GETDATE())=0
查询昨天
SELECT * FROM dept where DATEDIFF(day,create_date,GETDATE())=1
查询本周
SELECT * FROM dept where datediff(week,create_date,getdate())=0
查询上周
SELECT * FROM dept where datediff(week,create_date,getdate())=1
查询本月
SELECT * FROM dept where DATEDIFF(month,create_date,GETDATE())=0
查询上月
SELECT * FROM dept where DATEDIFF(month,create_date,GETDATE())=1
查询本季度的
select * from dept where datediff(quarter,create_date,getdate())=0