当前位置: 代码迷 >> SQL >> SQL函数获取1年中每个月的天数
  详细解决方案

SQL函数获取1年中每个月的天数

热度:7   发布时间:2016-05-05 11:40:41.0
SQL函数获取一年中每个月的天数

第一步:编写判断一年是否是闰年的函数IsLeapYear

CREATE FUNCTION IsLeapYear( @Year  INT)RETURNS BIT AS  BEGIN   IF (@Year % 4 = 0) and ((@Year % 100 <> 0) or (@Year % 400 = 0))  RETURN 1   RETURN 0END

第二步:编写一年中每个月的天数函数DaysPerMonth

CREATE FUNCTION DaysPerMonth( @Year INT, @Month INT)RETURNS INT AS  BEGIN   declare @Days INT  SET @Days =  case @Month  when 1 then 31  when 2 then 28  when 3 then 31  when 4 then 30  when 5 then 31  when 6 then 30  when 7 then 31  when 8 then 31  when 9 then 30  when 10 then 31  when 11 then 30  else 31  end    IF (@Month = 2) and (dbo.IsLeapYear(@Year) =1)--调用第一步的闰年判断函数。  SET @Days= @Days +1  return @DaysEND




  相关解决方案