乙個月第一天:
select dateadd(mm, datediff(mm,0,getdate()), 0)
本週的星期一 周(wk):
select dateadd(wk, datediff(wk,0,getdate()), 0)
一年的第一天 年(yy):
select dateadd(yy, datediff(yy,0,getdate()), 0)
季度的第一天:
select dateadd(qq, datediff(qq,0,getdate()), 0)
當天的半夜 :
select dateadd(dd, datediff(dd,0,getdate()), 0)
上個月的最後一天:
select dateadd(ms,-3,dateadd(mm, datediff(mm,0,getdate()), 0))
去年的最後一天 :
select dateadd(ms,-3,dateadd(yy, datediff(yy,0,getdate()), 0))
本月的最後一天 :
select dateadd(ms,-3,dateadd(mm, datediff(m,0,getdate())+1, 0))
本年的最後一天 :
select dateadd(ms,-3,dateadd(yy, datediff(yy,0,getdate())+1, 0))
本月的第乙個星期一 :
select dateadd(wk, datediff(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())), 0)
1)去掉時分秒
declare @ datetime
set @ = getdate() --『2003-7-1 10:00:00』
select @,dateadd(day, datediff(day,0,@), 0)
2)顯示星期幾
select datename(weekday,getdate())
3)如何取得某個月的天數
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)))
4)判斷是否閏年:
select case day(dateadd(mm, 2, dateadd(ms,-3,dateadd(yy, datediff(yy,0,getdate()), 0)))) when 28 then 『平年』 else 『閏年』 end
或者select case datediff(day,datename(year,getdate())+』-02-01』,dateadd(mm,1,datename(year,getdate())+』-02-01』))
when 28 then 『平年』 else 『閏年』 end
5)乙個季度多少天
declare @m tinyint,@time smalldatetime
select @m=month(getdate())
select @m=case when @m between 1 and 3 then 1
when @m between 4 and 6 then 4
when @m between 7 and 9 then 7
else 10 end
select @time=datename(year,getdate())+』-』+convert(varchar(10),@m)+』-01』
select datediff(day,@time,dateadd(mm,3,@time))
SQL Server 中日期比較
1.當前系統日期 時間 select getdate 2.dateadd 在向指定日期加上一段時間的基礎上,返回新的 datetime 值 例如 向日期加上2天 select dateadd day,2,2004 10 15 返回 2004 10 17 00 00 00.000 3.datediff...
sqlserver中比較日期大小
起始日期和終止日期,相信聰明的你肯定可以想象出為什麼要有兩個日期控制項!是的,就是從一張表中查詢出在這兩個日期範圍類的記錄!有的人就說了,這還不簡單!假如我們將第乙個控制項定義成begin,第二個控制項定義成over!那麼查詢語句不就是 select from recharge info where...
SQL Server 如何比較日期的大小
在機房收費系統中,有幾處這樣的情況 起始日期和終止日期,相信聰明的你肯定可以想象出為什麼要有兩個日期控制項!是的,就是從一張表中查詢出在這兩個日期範圍類的記錄!有的人就說了,這還不簡單!假如我們將第乙個控制項定義成begin,第二個控制項定義成over!那麼查詢語句不就是 select from r...