sql server 通过 sql查询今天、本周、上周、本月、上月、今年、去年的时间范围

sql server 通过 sql查询今天、本周、上周、本月、上月、今年、去年的时间范围

因为经常用到,做个笔记记录下

复制代码
select 
/*今天*/
convert(varchar(10),CAST(GETDATE() AS DATE),120),
convert(varchar(10),CAST(GETDATE() AS DATE),120),
/*本周*/
convert(varchar(10),DATEADD(wk, DATEDIFF(wk, 7, GETDATE())+1, 0),120),
convert(varchar(10),DATEADD(DAY, 6, DATEADD(wk, DATEDIFF(wk, 7, GETDATE())+1, 0)),120), 
/*上周*/
convert(varchar(10),DATEADD(wk, DATEDIFF(wk, 7, GETDATE()), 0),120) ,
convert(varchar(10),DATEADD(DAY, 6, DATEADD(wk, DATEDIFF(wk, 7, GETDATE()), 0)),120),  
/*本月*/
convert(varchar(10),DATEFROMPARTS(YEAR(GETDATE()), MONTH(GETDATE()), 1),120) ,
convert(varchar(10),EOMONTH(GETDATE()),120) ,
/*上月*/
convert(varchar(10),DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()) - 1, 0),120)  ,
convert(varchar(10),EOMONTH(DATEADD(MONTH, -1, GETDATE())),120),
/*今年*/
convert(varchar(10),DATEFROMPARTS(YEAR(GETDATE()), 1, 1),120),
convert(varchar(10),DATEFROMPARTS(YEAR(GETDATE()), 12, 31),120) ,
/*去年*/
convert(varchar(10),DATEFROMPARTS(YEAR(GETDATE()) - 1, 1, 1),120),
convert(varchar(10),DATEFROMPARTS(YEAR(GETDATE()) - 1, 12, 31),120)
相关推荐
snow@li4 分钟前
Redis:数据库语法速查表 / 全景梳理
数据库·redis·缓存
Devlive 开源社区6 分钟前
Nebula 1.6.0 发布:跨区域桶自动路由、秒传、文本/PDF 预览一次到位
数据库·sql
leonshi10 分钟前
数据库关联表查询出重复数据的原因分析与解决
sql·重复数据
这个DBA有点耶29 分钟前
导个数据中文全变问号?字符集这事儿真没那么简单
数据库·mysql·代码规范
wuqingshun3141591 小时前
MYSQL中如果发生死锁应该如何解决?
数据库·mysql
DO_Community1 小时前
Weaviate 托管数据库现已在 DigitalOcean 上开放公测
数据库·人工智能·开源·向量数据库·weaviate
报错小能手1 小时前
索引常见面试题
数据库
Database_Cool_2 小时前
时序数据库选型:阿里云 Lindorm 时序引擎 vs InfluxDB 全维度对比
数据库·阿里云·时序数据库
其实防守也摸鱼2 小时前
渗透--损坏的对象级别鉴权漏洞(Broken Object Level Authorization, BOLA)
大数据·网络·数据库·学习·tcp/ip·安全·安全威胁分析
hehelm2 小时前
IO 多路复用 — Reactor
linux·服务器·网络·数据库·c++