-- 本月的第一天SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) -- 本月的最后一天SELECT DATEADD(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0)) -- 上個月的第一天SELECT DATEADD(m,-1, DATEADD(mm, DATEDIFF(mm,0,getdate()), 0))-- 上個月的最后一天 SELECT DATEADD(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)) -- 本周的星期一SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)-- 本周的周日SELECT DATEADD(d,+6 ,DATEADD(wk, DATEDIFF(wk,0,getdate()), 0) )-- 上周的星期一SELECT DATEADD(d,-7 ,DATEADD(wk, DATEDIFF(wk,0,getdate()), 0) )-- 上周的周日SELECT DATEADD(d,-1 ,DATEADD(wk, DATEDIFF(wk,0,getdate()), 0) )-- 一年的第一天SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) -- 季度的第一天SELECT DATEADD(QQ, DATEDIFF(qq,0,getdate()), 0) -- 去年的最后一天SELECT DATEADD(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate()), 0))-- 本月的第一個星期一SELECT DATEADD(wk, DATEDIFF(wk,0,DATEADD(dd,6-datepart(day,getdate)),getdate))),0)-- 本年的最后一天SELECT DATEADD(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate())+1, 0))。-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- Sql Server中的日期與時間函數 -- 當前系統日期、時間 SELECT getdate() -- DATEADD 在向指定日期加上一段時間的基礎上,返回新的 datetime 值 例如:向日期加上2天 SELECT DATEADD(day,2,'2004-10-15') -- 返回:2004-10-17 00:00:00.000-- datediff 返回跨兩個指定日期的日期和時間邊界數。 SELECT datediff(day,'2004-09-01','2004-09-18') -- 返回:17-- datepart 返回代表指定日期的指定日期部分的整數。 SELECT DATEPART(month, '2004-10-15') -- 返回 10-- datename 返回代表指定日期的指定日期部分的字符串 SELECT datename(weekday, '2004-10-15') -- 返回:星期五-- day(), month(),year() -- 可以與datepart對照一下-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- SELECT 當前日期=convert(varchar(10),getdate(),120) SELECT 當前時間=convert(varchar(8),getdate(),114)SELECT datename(dw,'2004-10-15')SELECT 本年第多少周=datename(week,'2004-10-15')SELECT 今天是周幾=datename(weekday,'2004-10-15')
新聞熱點
疑難解答