sqlserver如何获取指定日期当月的最后一天

在现实的SQL统计场景中,有时辰需要统计指心猿意马日期到当月月底的数据,这个时辰,就需要确定指心猿意马日期的当月最后一天到底是几月几号,本文以数据库当前日期为例,计较当前月的最后一天为例

东西/原料

  • sqlserver

方式/步调

  1. 1

    获取SQLServer的当前日期,利用getdate方式即可

        select GETDATE()

  2. 2

    获取SQLServer最小日期,在最小日期上面加上0天、0年、或者0月结果都是一样的

        select DATEADD(month, 0, 0)

  3. 3

    获取SQLServer最小日期的前一天,也就是最小日期上一个月的最后一天

        select DATEADD(month, 0, -1)

  4. 4

    计较当前日期加一个月的日期,也就是下个月的今天

        select dateadd(month, 1, getdate())

  5. 5

    计较下个月距离SQLServer最小日期相差了几多个月

        select datediff(month, 0, dateadd(month, 1, getdate()))

  6. 6

    从SQLServer最小日期的前一天,加上计较出来的月份差,就获得了当月的最后一天

        select dateadd(month, datediff(month, 0, dateadd(month, 1, getdate())), -1)

  7. 7

    从SQLServer 2012起头,数据库内置了获取指心猿意马月份的最后一天的函数,叫做EOMONTH,这个函数返回只有日期

        select EOMONTH(getdate())

  • 发表于 2019-03-12 21:26
  • 阅读 ( 1692 )
  • 分类:其他类型

0 条评论

请先 登录 后评论
联系我们:uytrv@hotmail.com 问答工具