Android 每月从sqlite数据库检索值

Android 每月从sqlite数据库检索值,android,sqlite,Android,Sqlite,如何为每个月的结尾选择行的值。上面的代码只给出日期的第一个值…但我需要每个月的第一个值…它存储在时间戳中。首先,使用max()而不是ORDER BY: select * from balance where value = '"+value+"' order by date DESC LIMIT 1 然后,您可以使用GROUP BY获取每个月的最大日期(%Y%m输出年份和月份,即每个月都是唯一的): 然后可以使用这些日期筛选原始表: SELECT max(date) FROM balance

如何为每个月的结尾选择行的值。上面的代码只给出日期的第一个值…但我需要每个月的第一个值…它存储在时间戳中。首先,使用max()而不是ORDER BY:

select * from balance  where value = '"+value+"' order by date DESC LIMIT 1
然后,您可以使用GROUP BY获取每个月的最大日期(
%Y%m
输出年份和月份,即每个月都是唯一的):

然后可以使用这些日期筛选原始表:

SELECT max(date)
FROM balance
WHERE value = ?
GROUP BY strftime('%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'))