0

我的SQLite表结构如下:

Table: Income. 
Columns:   IncomeID, IncomeAmount,  IncomeMonth, IncomeYear

我如何编写SQLite 查询来检索给定日期范围之间的收入金额。

我知道,我们需要使用日期函数,但我不知道如何在其中指定两列,我的意思是IncomeMonthIncomeYear

4

1 回答 1

4

如果您知道给定日期范围的年份和月份,则不需要日期函数。

如果记录的年份在范围的起始年份之后,或者如果两者都在同一年,那么如果记录的月份相同或在范围的起始月份之后,则记录在范围内。范围结束的比较是相似的:

SELECT *
FROM Income
WHERE ( IncomeYear > StartYear OR
       (IncomeYear = StartYear AND IncomeMonth >= StartMonth))
  AND ( IncomeYear < EndYear OR
       (IncomeYear = EndYear   AND IncomeMonth <= EndMonth))
于 2013-08-01T19:09:02.263 回答