如何判断某个日期当月的最后一天
比如"2005-12-1"的最后一天是"2005-12-31"
有没有判断某个日期当月最后一天的函数?
或者其它方法也行

解决方案 »

  1.   

    http://community.csdn.net/Expert/topic/4475/4475767.xml?temp=.7411768
      

  2.   

    先月份加一,日设置为一,然后用DateAdd函数将日期减一天即可。Public Function GetLastDate(aDate As String) As String
        Dim strTmp As String
        
        strTmp = DateAdd("m", 1, aDate)
        strTmp = Year(strTmp) & "/" & Month(strTmp) & "/1"
        GetLastDate = DateAdd("d", -1, strTmp)
    End Function==========================
    免费的学习、交流、源码、工具下载网站,欢迎大家访问!
    http://www.j2soft.cn/
      

  3.   

    --在SQL里写个函数或SP,传入日期,取其返回的整形值,也可以:
    DECLARE @YMD datetime 
    SET @YMD='2005-3-18'
    SELECT @YMD AS [日期],DAY(DATEADD(day,-1,DATEADD(month,1,CONVERT(datetime,CONVERT(char(4),YEAR(@YMD))+'-'+CONVERT(varchar(2),MONTH(@YMD))+'-1')))) AS [最后一天]
    /*
    日期 最后一天
    2005-03-18 00:00:00.000 31
    */
      

  4.   

    dim DateTmp As DateDateTmp = DateSerial(Year(Date),Month(Date) + 1, 1) - 1上面的DateTmp就是当月最后一天的日期。另:
    Print Day( DateSerial(Year(Date),Month(Date) + 1, 1) - 1 )
    打印当月最后一天的Day值
      

  5.   

    这个简单,用dateadd 加1上去,如果月份变了,就代表是最后一天了
      

  6.   

    天数那么少,直接case比判断要来得快吧,当然2月要计算一下