几周从sqlite中检索数据

时间:2015-05-01 13:29:07

标签: android sqlite

我有一个应用程序,每天将一些信息注册到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以及所有我的数据库记录。 我正在尝试构建自己的算法,但我意识到我有点困惑,我的截止日期很快,所以我想找个简单的方法。

也许有人有同样的情况,请帮助我。

2 个答案:

答案 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)