下面是我想做的伪代码:
当 Date
为 Between
04-01
和次年的 03-31
则输出为 Q1
.
我知道如何处理年份但不排除年份。
最佳答案
我不知道输出“Q1”是什么意思。但是,如果您希望您的年份从 4 月 1 日开始(这似乎是对您的 sking 的合理解释),最简单的方法是减去天数。对于你将要处理的大多数年份,你可以这样做:
select year(dateadd(day, - (31 + 28 + 31), date) as theyear
当然,这只适用于四年中的三年,因为有闰年。解决此问题的一种方法是使用显式逻辑——但这会变得困惑。另一种方法是将剩余的月份相加并减去一年:
select year(dateadd(day, (30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + 31), date) - 1 as theyear
关于sql - 选择日期和不包括年份的月份之间的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27805950/