如何获得当月的天数?
2008-04-27 06:09
253 查看
--方法一
DECLARE@monthint,@yearint
SELECT@month=6,@year=2004
SELECTDATEPART(dd,DATEADD(m,1,CAST(STR(@month)+'/01/'+STR(@year)as
datetime))-1)
--方法二
DECLARE@DATEDATETIME
SET@DATE=GETDATE()
SELECTCAST(
--Firstdayofnextmonth
DATEADD(MONTH,DATEDIFF(MONTH,0,@DATE)+1,0)
-
--Firstdayofcurrentmonth
DATEADD(MONTH,DATEDIFF(MONTH,0,@DATE),0)
ASINT)
--方法三
这个你也可以写一个UDF来实现:
createfunctionfn_NumOfDaysInMon(@datedatetime)
returnsint
as
begin
declare@begmonthdatetime,@endmonthdatetime,@daysint
select@begmonth=dateadd(month,datediff(month,0,@date),0)
select@endmonth=dateadd(dd,-datepart(dd,@date),dateadd(mm,1,@date))
select@days=datediff(dd,@begmonth,@endmonth)+1
return@days
end
DECLARE@monthint,@yearint
SELECT@month=6,@year=2004
SELECTDATEPART(dd,DATEADD(m,1,CAST(STR(@month)+'/01/'+STR(@year)as
datetime))-1)
--方法二
DECLARE@DATEDATETIME
SET@DATE=GETDATE()
SELECTCAST(
--Firstdayofnextmonth
DATEADD(MONTH,DATEDIFF(MONTH,0,@DATE)+1,0)
-
--Firstdayofcurrentmonth
DATEADD(MONTH,DATEDIFF(MONTH,0,@DATE),0)
ASINT)
--方法三
这个你也可以写一个UDF来实现:
createfunctionfn_NumOfDaysInMon(@datedatetime)
returnsint
as
begin
declare@begmonthdatetime,@endmonthdatetime,@daysint
select@begmonth=dateadd(month,datediff(month,0,@date),0)
select@endmonth=dateadd(dd,-datepart(dd,@date),dateadd(mm,1,@date))
select@days=datediff(dd,@begmonth,@endmonth)+1
return@days
end
相关文章推荐
- 如何获得当月的天数?
- 如何获得当月的天数?
- C#中如何获得两个日期之间的天数差 ( c# 计算两个日期之间相差的天数 )
- MSSQL 获得当月天数
- C#中如何获得两个日期之间的天数差
- 如何获得用户密码被修改的天数
- java中 如何获取当月的天数、指定日期的月份天数
- JS根据年月获得当月天数的实现代码
- JS根据年月获得当月天数的实现代码
- 获得当月天数的Sql语句
- 在SQLserver中如何获得两个日期相减的天数?
- JS获得当月的天数和得到当月最后一天的日期
- Sql语句获得当月天数
- JS根据年月实现获得当月天数
- 在SQLserver中如何获得两个日期相减的天数及日期函数
- (转)如何获得两个日期相减的天数?
- JS获得当月的天数和得到当月最后一天的日期
- 如何获得系统进程信息
- 如何获得安全的数据类型?
- 如何获得一个整数的二进制表达中有多少个1?