- 論壇徽章:
- 0
|
ALTER function fn_DateDiffMonth(@sStart varchar(20),@sEnd varchar(20))
returns integer
as
begin
--取得兩個日期間的相隔實際月份數(shù)
declare @Result integer
declare @sDateEnd char(10),@sDate char(10)
set @Result = DateDiff(month,@sStart,DateAdd(day,1,@sEnd)) --系統(tǒng)函數(shù)計算相差月
select @sDateEnd=convert(char(10),convert(datetime,Rtrim(@sEnd)),120)
set @sDate=convert(char(10),DateAdd(day,-1,DateAdd(month,@Result,@sStart)),120) --開始日期加上相差月份數(shù)的日期(要提前一天)
if (@sDateEnd < @sDate)
begin
set @Result = @Result-1
end
return @Result
--調(diào)用 select dbo.fn_DateDiffMonth('2007-09-11','2007-10-2')
end
本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u/941/showart_301481.html |
|