我有一个应用程序,每天将一些信息注册到SQLite DB中。 我的表看起来像这样:
ID 数据 计数器
并且创建我的表的脚本是:
CREATE_TABLE_SCRIPT = "CREATE TABLE " + TABLE_RESULTS_NAME + "("
+ KEY_ID + " INTEGER PRIMARY KEY," + KEY_DATA + " TEXT," + KEY_COUTER + " INTEGER DEFAULT 0" + ")";
我插入今天的日期,使用SimpleDateFormat
和计数器将其转换为字符串,每次按下按钮X.如果当前日期与此DB表中的最后一行相同,我只需更新计数器列进行计数++。
我可以毫无问题地从数据库中检索所有信息。但是我希望按周检索SUM(counter)
,例如26/Apr/2015 -- 2/May/2015
以及所有我的数据库记录。
我正在尝试构建自己的算法,但我意识到我有点困惑,我的截止日期很快,所以我想找个简单的方法。
也许有人有同样的情况,请帮助我。
答案 0 :(得分:1)
以“2015-04-24 00:00:00”格式存储您的日期,并尝试以下查询。
select SUM(counter) from dates1
where dates >= Datetime('2015-04-26 00:00:00')
and dates <= Datetime('2015-05-02 00:00:00')
答案 1 :(得分:0)
我决定改变我的桌子,所以现在它看起来像这样:
WITHOUT ROWID
以及检索autoincrement
一段时间的方法是:
private static final String CREATE_TABLE_SCRIPT = "CREATE TABLE " + TABLE_RESULTS_NAME + "("
+ KEY_ID + " INTEGER PRIMARY KEY," + KEY_DATA + " INTEGER," + KEY_COUTER + " INTEGER DEFAULT 0" + ")";
在我的dao类中调用这个泛型方法:
SUM(counter)