摘要:
下文通过sql函数的形式,获取指定月份的总天数
实验环境:sqlserver 2008 r2
制作思路:
1. 获取指定月份的第一天,
2. 并采用dateadd向后加一个月形成一个新的日期
3. 将两个日期相减,并返回之间的相差天数,作为指定月份的总天数,如下所示:
create function dbo.fn_getmonthdayall ---自定义函数名称 ( @yyyymm varchar(20) ---指定输入参数格式 4位年份2位月份 ) returns int ---函数返回值类型 as begin declare @dayall int declare @monthstartday datetime set @monthstartday =left(@yyyymm,4)+'-'+right(@yyyymm,2)+'-01' select @dayall= datediff(day,@monthstartday,dateadd(month,1,@monthstartday)) ---获取指定月份总天数 return @dayall; end go select dbo.fun_getmonthdays('201804'), dbo.fun_getmonthdays('201808'); ---测试获取月份总天数函数
转自:http://www.maomao365.com/?p=6792