日期:2014-05-19  浏览次数:20409 次

急啊,大侠给解决个自然月或固定日期月的问题,给写个函数.(sqlServer2000)
函数名为:GetMonth(@Year   int)

当用户为自然月时,并指定年度(例如2007年),得到如下记录:
例:调用GetMonth(2007),得到结果
月份   起始日   结束日
  1         1             31
  2         1             28
  3         1             31
  4         1             30
...
  12       1             31

函数名为:GetMonth(@Year   int,@day   int)
例:调用GetMonth(2007,24)
月份   起始日   结束日
  1         12             24
  2         25             24
  3         25             24
  4         25             21
...
  12       25             24

这个要考虑到调用GetMonth(2007,29)这种情况(2月天数不同情况)



------解决方案--------------------
用dateadd函数不就可以了吗?

自然月就用dateadd(m,1, ' ')
固定日期月就用dateadd(d,12, ' ')--这里的12就随便你改了


为什么非要那么麻烦的函数,呵呵