14
日期計算
●上個月的第一天
SELECT DATEADD(mm, DATEDIFF(mm,0,getdate())-1, 0)
●上個月的最后一天
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0))
select DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)-1
●本周的星期一
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)
●計算一個月第一天的SQL
SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)
●本月的最后一天
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0))
●本月的第一個星期一
select DATEADD(wk, DATEDIFF(wk,0, dateadd(dd,6-datepart(day,getdate()),getdate())), 0)
●如何取得某個月的天數
declare @m int
set @m=2 –月份
select datediff(day,’2003-‘+cast(@m as varchar)+’-15′ ,’2003-‘+cast(@m+1 as varchar)+’-15′)
另外,取得本月天數
select datediff(day,cast(month(GetDate()) as varchar)+’-‘+cast(month(GetDate()) as varchar)+’-15′ ,cast(month(GetDate()) as varchar)+’-‘+cast(month(GetDate())+1 as varchar)+’-15′)
或者使用計算本月的最後一天的腳本,然後用DAY函數區最後一天
SELECT Day(dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0)))
●顯示星期幾
select datename(weekday,getdate())
●去掉時分秒
declare @ datetime
set @ = getdate() –‘2003-7-1 10:00:00’
SELECT @,DATEADD(day, DATEDIFF(day,0,@), 0)
There are no comments.