在现实的SQL统计场景中,有时辰需要统计指心猿意马日期到当月月底的数据,这个时辰,就需要确定指心猿意马日期的当月最后一天到底是几月几号,本文以数据库当前日期为例,计较当前月的最后一天为例
获取SQLServer的当前日期,利用getdate方式即可
select GETDATE()
获取SQLServer最小日期,在最小日期上面加上0天、0年、或者0月结果都是一样的
select DATEADD(month, 0, 0)
获取SQLServer最小日期的前一天,也就是最小日期上一个月的最后一天
select DATEADD(month, 0, -1)
计较当前日期加一个月的日期,也就是下个月的今天
select dateadd(month, 1, getdate())
计较下个月距离SQLServer最小日期相差了几多个月
select datediff(month, 0, dateadd(month, 1, getdate()))
从SQLServer最小日期的前一天,加上计较出来的月份差,就获得了当月的最后一天
select dateadd(month, datediff(month, 0, dateadd(month, 1, getdate())), -1)
从SQLServer 2012起头,数据库内置了获取指心猿意马月份的最后一天的函数,叫做EOMONTH,这个函数返回只有日期
select EOMONTH(getdate())
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!