最近做项目,常常用到一些SQL函数。现贴出来供大家使用
select datediff(day,getdate(),dateadd(month,1,getdate())) --一个月的天数
SELECT CONVERT(datetime,CONVERT(char(8),getdate(),120)+'1') --一个月的第一天
SELECT DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1,getdate()),120)+'1') --一个月的最后一天
select convert(decimal, datediff(week, CONVERT(datetime,CONVERT(char(8),getdate(),120)+'1'),DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1,getdate()),120)+'1'))) --一个月的双休的天数
--获取两个时间点间的所有时间列表
declare @stime datetime
set @stime='2009-11-01'
declare @times table(id int identity,tt varchar(50))
while @stime<'2009-11-30'
begin
insert @times(tt) values(@stime)
set @stime=convert(varchar,dateadd(day,1,@stime))
end
select *from @times