我的SQLite表结构如下:
Table: Income.
Columns: IncomeID, IncomeAmount, IncomeMonth, IncomeYear
我如何编写SQLite 查询来检索给定日期范围之间的收入金额。
我知道,我们需要使用日期函数,但我不知道如何在其中指定两列,我的意思是IncomeMonth和IncomeYear
如果您知道给定日期范围的年份和月份,则不需要日期函数。
如果记录的年份在范围的起始年份之后,或者如果两者都在同一年,那么如果记录的月份相同或在范围的起始月份之后,则记录在范围内。范围结束的比较是相似的:
SELECT *
FROM Income
WHERE ( IncomeYear > StartYear OR
(IncomeYear = StartYear AND IncomeMonth >= StartMonth))
AND ( IncomeYear < EndYear OR
(IncomeYear = EndYear AND IncomeMonth <= EndMonth))