获取各种时间的sql 语句

本文深入探讨了SQL中DATEDIFF、DAY等日期函数的使用,包括计算日期间隔、获取当前月份天数以及如何获取特定月份的第一天和最后一天。通过实例展示了如何获取上一月及下一月的日期,对于数据库管理和数据分析工作极具参考价值。
摘要由CSDN通过智能技术生成
--函数返回两个日期之间的时间。   参数m是月 d是天  DATEDIFF(datepart,startdate,enddate)
--0代表日期的起始位置 1900-1-1select DATEDIFF(m,0,getdate())  --1458个月   --参考d的效果:select DATEDIFF(d,'1900-01-01','2021-07-07')

--day() 函数,获取当前时间的天数
select -day(getdate())

--sqlserver时间的起始值就是 1900-01-01 00:00:00
select CONVERT(datetime,0)


--获取当月最后一天(下个月第一天时间毫秒-3  就是当前月的最后一天)
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0))

--当前月第一天 DATEADD(daprt参数,number是希望加的间隔数,date是一个日期)
select DATEADD(MM,DATEDIFF(MM,0,GETDATE()),0) 


--获取当前时间上一个月第一天
select DATEADD(mm, DATEDIFF(m,0,getdate())-1, 0)

--获取当前时间上一个月的最后一天
select dateadd(ms,-3,DATEADD(MM,DATEDIFF(MM,0,GETDATE()),0))

--获取当前月的下一个月第一天
select DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0)

--获取当前时间下个月最后一天
SELECT dateadd(month,1,dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0)))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值