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)
相关推荐
严同学正在努力5 分钟前
Oracle数据技术运维大全(下篇)
运维·数据库·ai·oracle·架构
catino38 分钟前
spring-事务@Transactional
java·数据库·spring
数智启示录39 分钟前
Apache Doris 4.0.8 数据建模实战(第 2 篇):同一批订单写进三种模型,为什么得到三个答案
大数据·数据库·面试
数智启示录1 小时前
Apache Doris 4.0.8 CDC 正确性(第 9 篇):Flink Checkpoint 一直成功,表里为什么仍是旧数据
大数据·数据库·经验分享·面试·flink
拾光Ծ2 小时前
【MySQL】对表数据的操作:增删查改(CRUD)
android·数据库·sql·mysql
迷枫7123 小时前
SQL 优化排查记录:补充索引,利用 OR 展开消除大表重复扫描
sql
这个DBA有点耶15 小时前
2026年分布式数据库有哪些主流选择?先评估这5个维度再决定
数据库·分布式·dba
这个DBA有点耶18 小时前
从MySQL 5.7到8.0:JSON查询性能差在哪?虚拟列索引vs多值索引怎么选
数据库·mysql·架构
胡写代码18 小时前
数据库审计字段,别再每张表各写一套了——我统一成这 6 个字段
数据库
SelectDB1 天前
为什么 JSON 正在成为分析数据库新的竞争点?
数据库·json·agent