当前位置:  开发笔记 > 数据库 > 正文

计算该季度的最后一天

如何解决《计算该季度的最后一天》经验,为你挑选了3个好方法。

计算上一季度最后一天的最有效方法是什么?

示例:给定日期为11/19/2008,我想返回2008年9月30日.

平台是SQL Server



1> Charles Bret..:

如果@Date有相关日期

Select DateAdd(day, -1, dateadd(qq, DateDiff(qq, 0, @Date), 0)) 

编辑:感谢下面的@strEagle,更简单的是:

Select dateadd(qq, DateDiff(qq, 0, @Date), -1) 



2> 小智..:

实际上更简单的是:

SELECT DATEADD(qq, DATEDIFF(qq, 0, GETDATE()), -1)



3> 小智..:

获取当前日期

SELECT CONVERT(DATE,GETDATE()) [Current Date]

获取当前日期的季度的第一个日期

SELECT CONVERT(DATE, DATEADD(QQ, DATEDIFF(QQ, 0, GETDATE())  ,0)) [Current Quarter 1st Date]

获取当前日期的季度的最后日期

SELECT CONVERT(DATE,DATEADD(d, -1, DATEADD(q, DATEDIFF(q, 0, GETDATE()) +1, 0))) [Current Quarter Last Date]

获取当前日期的下一季度的第一个日期

SELECT CONVERT(DATE, DATEADD(QQ, DATEDIFF(QQ, 0, GETDATE()) +1 ,0)) [Next Quarter 1st Date]

获取当前日期的下一季度的最后日期

SELECT CONVERT(DATE,DATEADD(d, -1, DATEADD(q, DATEDIFF(q, 0, GETDATE()) +2, 0))) [Next Quarter Last Date]

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有