每月从sqlite数据库中检索值

时间:2014-12-04 05:07:15

标签: android sqlite

select * from balance  where value = '"+value+"' order by date DESC LIMIT 1

如何选择每个月结尾的行值...上面的代码只给出了日期的第一个值...但我需要每个月的第一个值....它存储在时间戳中

1 个答案:

答案 0 :(得分:0)

首先,使用max()而不是ORDER BY:

SELECT max(date)
FROM balance
WHERE value = ?

然后,您可以使用GROUP BY获取每个月的最大日期(%Y%m年份和月份的输出,即每个月的唯一日期):

SELECT max(date)
FROM balance
WHERE value = ?
GROUP BY strftime('%Y%m')

然后您可以使用这些日期来过滤原始表格:

SELECT *
FROM balance
WHERE date IN (SELECT max(date)
               FROM balance
               WHERE value = ?
               GROUP BY strftime('%Y%m'))
相关问题