sql 语句查询今天、昨天、近7天、近30天、一个月内、上一月 数据 及 CONVERT 中数字参数用法

本文介绍了如何使用SQL语句根据当天、昨天、近7天、近30天、一个月、上个月等不同时间段进行数据查询,以及DATEPART和DATEDIFF函数的应用,以及CONVERT函数在日期格式转换中的用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sql 语句查询今天、昨天、近7天、近30天、一个月内、上一月 数据


提示:以下是本篇文章正文内容,下面案例可供参考

一、sql 语句查询今天、昨天、近7天、近30天、一个月内、上一月 数据

1、当天、昨天、本周、上周、本月、上月、本年、去年

代码如下(示例):

--当天
datediff(day, 时间字段 ,getdate()) = 0 

--昨天
datediff(day, 时间字段 ,getdate()) = 1 

--三天
datediff(day,时间字段,getdate())<= 2 and datediff(day,时间字段,getdate())>= 0 

--一周
(DATEPART(wk, 时间字段) = DATEPART(wk, GETDATE())) AND (DATEPART(yy, 时间字段) = DATEPART(yy, GETDATE())) 

--一月
(DATEPART(yy, 时间字段) = DATEPART(yy, GETDATE())) AND (DATEPART(mm, 时间字段) = DATEPART(mm, GETDATE()))

--一季度
DATEPART(qq, 时间字段) = DATEPART(qq, GETDATE()) and DATEPART(yy, 时间字段) = DATEPART(yy, GETDATE()) 

--本周
datediff(week,时间字段,getdate())=0  

--上周
datediff(week,时间字段,getdate())=1

--本月
datediff(Month,时间字段,getdate())=0 

--上月
datediff(Month,时间字段,getdate())=1

--今年
datediff(Year,时间字段,getdate())=0

--去年
datediff(Year,时间字段,getdate())=1

--本季度
datediff(qq,时间字段,getdate())=0 

2、CONVERT(varchar(10), getdate(), 120 )中数字参数用法

--系统当前时间
getdate() --2024-01-17 15:59:12.930

--此格式码 "120" 表示的格式为 "yyyy-MM-dd HH:mm:ss" 。它包含年、月、日、小时、分钟和秒
CONVERT(varchar, getdate(), 120 ) --2024-01-17 16:09:14

--此格式码 "112" 表示的格式为 "yyyyMMdd" 。它只包含年、月和日,没有任何分隔符
CONVERT(varchar, GETDATE(), 112) --20240117

--此格式码 "101" 表示的格式为 "MM/dd/yyyy" 。它包含月、日和年,并使用斜杠作为分隔
CONVERT(varchar, GETDATE(), 101) --01/17/2024

--此格式码 "108" 表示的格式为 "HH:mm:ss" 。它只包含小时、分钟和秒,没有日期部分
SELECT CONVERT(varchar, GETDATE(), 108) --16:17:12
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MingAndLu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值