您好我正在尝试写一个1年间隔的案例陈述,在这种情况下,年份从4月开始到次年3月结束,但是如果例如今年的3月进入那么它将是结束去年由于事实,这一年将从去年四月开始
查看sqlfiddle here
这是我到目前为止的代码,请注意
sum(case
when Month(py.pay_date) = 4 interval())1 year
then amount end) yearly_amount
这是我遇到重大问题的地方
答案 0 :(得分:4)
您可以将此用于当前年度的yearly_amount
计算(从4月开始到明年3月底结束):
sum(case
when py.pay_date >= STR_TO_DATE(CONCAT(YEAR(NOW()), '-04-01'), '%Y-%m-%d') and
py.pay_date < STR_TO_DATE(CONCAT(YEAR(NOW()), '-04-01'), '%Y-%m-%d') + interval 1 year
then amount
end) yearly_amount