用户登录
用户注册

分享至

SqlServer 查询最近一段范围中的数据

  • 作者: Black66506319
  • 来源: 51数据库
  • 2021-07-05

sql得到当前系统时间得 日期部分

convert(varchar(10),getdate(),120)

 

昨天

select convert(varchar(10),getdate() - 1,120)

明天

select convert(varchar(10),getdate() + 1,120)

最近七天

select * from tb where 时间字段 >= convert(varchar(10),getdate() - 7,120)

随后七天

select * from tb where 时间字段 <= convert(varchar(10),getdate() + 7,120) and 时间字段 >= 时间字段

 

上月

select * from tb where month(时间字段) = month(getdate()) - 1

本月

select * from tb where month(时间字段) = month(getdate())

下月

select * from tb where month(时间字段) = month(getdate()) + 1

--昨天

select * from tablename where datediff(dd, datetimcol, getdate()) = 1

--明天

select * from tablename where datediff(dd, getdate(), datetimcol) = 1

--最近七天

select * from tablename where datediff(dd, datetimcol, getdate()) <= 7

--随后七天

select * from tablename where datediff(dd, getdate(), datetimcol) <= 7

--上周

select * from tablename where datediff(wk, datetimcol, getdate()) = 1

--本周

select * from tablename where datediff(wk, datetimcol, getdate()) = 0

--下周

select * from tablename where datediff(wk, getdate(), datetimcol ) = 1

--上月

select * from tablename where datediff(mm, datetimcol, getdate()) = 1

--本月

select * from tablename where datediff(mm, datetimcol, getdate()) = 0

--下月

select * from tablename where datediff(mm, getdate(), datetimcol ) = 1

--------------------------------------------------------

本周

select * from tb where datediff(week , 时间字段 ,getdate()) = 0

上周

select * from tb where datediff(week , 时间字段 ,getdate()) = 1

下周

select * from tb where datediff(week , 时间字段 ,getdate()) = -1

 

纯数字时间这样转换

and datediff(mm,getdate(),convert(datetime,convert(nvarchar,
substring(convert(varchar(100),yl01),0,9),20))) <=3

软件
前端设计
程序设计
Java相关