当前位置:  开发笔记 > 编程语言 > 正文

SQL获得本月前3个月的第一天

如何解决《SQL获得本月前3个月的第一天》经验,为你挑选了1个好方法。

我想选择当前日期前3个月的第一天.

所以例如,如果当前日期为:'2015-11-08',我的结果将是:'2015-08-01'

如果这是yyyy-mm-dd格式,我更愿意.

我试过这个开始,但没有运气:

SELECT DATEADD(dd, -DAY('2015-09-01') + 1, @today)

我已经尝试过很多东西,但似乎无法解决它,任何建议或帮助将不胜感激.先感谢您



1> Gordon Linof..:

逻辑很简单:

减去当月减去日期后的1天

减去三个月

在SQL Server中:

select dateadd(month, -3, dateadd(day, 1 - day(dte), dte))

对于当前日期:

select cast(dateadd(month, -3, dateadd(day, 1 - day(getdate()), getdate())) as date)

并作为一个字符串:

select convert(varchar(10),
               dateadd(month, -3, dateadd(day, 1 - day(getdate()), getdate())),
               120)

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