【SqlServer】SqlServer常用日期操作

1. 简单查询

说明 查询 sql
日期格式化 SELECT CONVERT(VARCHAR, GETDATE(), 102) AS '102', -- yyyy.mm.dd CONVERT(VARCHAR, GETDATE(), 108) AS '108', -- hh:mi:ss CONVERT(VARCHAR, GETDATE(), 111) AS '111', -- yyyy/mm/dd CONVERT(VARCHAR, GETDATE(), 112) AS '112', -- yyyymmdd CONVERT(VARCHAR, GETDATE(), 23) AS '23', -- yyyy-mm-dd left(CONVERT(VARCHAR, GETDATE(), 23),7) as 'yyyy-mm', -- yyyy-mm CONVERT(VARCHAR, GETDATE(), 120) AS '120', -- yyyy-mm-dd hh:mi:ss CONVERT(VARCHAR, GETDATE(), 121) AS '121' -- yyyy-mm-dd hh:mi:ss.mmm
本月第一天 SELECT DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()), 0) ;
本月最后一天 SELECT DATEADD(DAY, -1, DATEADD(MONTH, DATEDIFF(MONTH, -1, GETDATE()), 0)); 或者:select EOMONTH(GETDATE());

2. 查询两个日期范围内所有日期列表

sql 复制代码
WITH xrange AS (
    SELECT CAST('2025-07-01' AS DATE) AS curr_day
    UNION ALL
    SELECT DATEADD(DAY, 1, curr_day)
    FROM xrange
    WHERE DATEADD(DAY, 1, curr_day) <= CAST('2025-09-10' AS DATE)
)
SELECT curr_day
FROM xrange
OPTION (MAXRECURSION 0);

3. 查询两个月份范围内所有月份列表

sql 复制代码
WITH xrange AS (
    SELECT CAST(concat('2025-07','-01') AS DATE) AS curr_month
    UNION ALL
    SELECT DATEADD(month, 1, curr_month)
    FROM xrange
    WHERE DATEADD(month, 1, curr_month) <= CAST(concat('2025-09','-10') AS DATE)
)
SELECT left(curr_month,7) as curr_month
FROM xrange
OPTION (MAXRECURSION 0);
相关推荐
码界筑梦坊10 分钟前
327-基于Django的兰州空气质量大数据可视化分析系统
python·信息可视化·数据分析·django·毕业设计·数据可视化
毕设源码-郭学长17 小时前
【开题答辩全过程】以 基于python的二手房数据分析与可视化为例,包含答辩的问题和答案
开发语言·python·数据分析
2501_9436953318 小时前
高职大数据与会计专业,考CDA证后能转纯数据分析岗吗?
大数据·数据挖掘·数据分析
爱吃泡芙的小白白1 天前
环境数据多维关系探索利器:Pairs Plot 完全指南
python·信息可视化·数据分析·环境领域·pairs plot
莽撞的大地瓜1 天前
洞察,始于一目了然——让舆情数据自己“说话”
大数据·网络·数据分析
AI职业加油站1 天前
职业提升之路:我的大数据分析师学习与备考分享
大数据·人工智能·经验分享·学习·职场和发展·数据分析
爱吃泡芙的小白白2 天前
环境数据可视化利器:Hexbin Chart 全解析与应用实战
信息可视化·数据挖掘·数据分析·环境领域·hexbin chart
爱吃泡芙的小白白2 天前
环境数据可视化利器:气泡图(Bubble Chart)全解析
信息可视化·数据挖掘·数据分析·气泡图·bubble chart·环境领域
沐墨染2 天前
Vue实战:自动化研判报告组件的设计与实现
前端·javascript·信息可视化·数据分析·自动化·vue
sensen_kiss2 天前
Jupter Notebook 使用教程
大数据·人工智能·python·学习·数据分析