我正在为客户端修复一个android应用,并且我需要查询一个sqlite数据库以显示他们需要的报告。
该报告应仅显示当前会计年度的数据(从4月1日开始至3月31日结束)。以前的开发人员执行了以下查询:
... WHERE sales_date BETWEEN date('now','localtime','start of year','+3 months') "
+ "AND date('now','localtime','start of year', '+1 year', '+3 months','-1 day') "
此查询目前无法使用,因为例如在2015年1月,它显示的是2015年4月至2015年3月的数据,在这里应显示从2014年4月至2015年3月的数据。
我一直在寻找sqlite的最佳解决方案,因为我已经找到了其他SQL的类似答案(将日期截断为会计年度或使用TO_CHAR函数显示会计年度)
在头三个月中,您需要上一年。因此,减去开始月份前的三个月:
BETWEEN date('now', 'localtime', '-3 months', 'start of year', '+3 months') "
AND date('now', 'localtime', '-3 months', 'start of year', '+1 year', '+3 months', '-1 day')
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句