重写SQL Server DateDiff函数

来源:互联网 发布:mac系统照片怎么删除 编辑:程序博客网 时间:2024/06/09 22:24

--将系统datediff函数重写,主要把datepart类型改为varhcar,方便调用

--作者:敖士伟

--Date:2009-10-14 10:29
create function MyDateDiff(@datepart varchar(50), --日期间隔类型:year,month,day.etc
@date1 varchar(50), @date2 varchar(50))
returns int
as
begin
 declare @part int
 if @datepart='year'
  begin
   set @part=datediff(year,@date1,@date2)
  end
 if @datepart='month'
  begin
   set @part=datediff(month,@date1,@date2)
  end
 if @datepart='day'
  begin
   set @part=datediff(day,@date1,@date2)
  end
 if @datepart='week'
  begin
   set @part=datediff(week,@date1,@date2)
  end
 if @datepart='hour'
  begin
   set @part=datediff(hour,@date1,@date2)
  end
 if @datepart='minute'
  begin
   set @part=datediff(minute,@date1,@date2)
  end
 if @datepart='second'
  begin
   set @part=datediff(second,@date1,@date2)
  end

 return(@part)
end --结束函数定义

原创粉丝点击