public Cursor getRowsBetweenDate(Date startAt, Date endAt) {
String selection = KEY_START_AT + " >= time('now', 'localtime') AND " + KEY_END_AT + " <= time('now', 'localtime')";
return sqLiteDatabase.query(TABLE_NAME, null, selection, null, null, null, null);
}
但我想要一整天,现在无效。我想获取当天有效的所有行。所以从 00:00 到 23:59:59
我该怎么做?
编辑:
谢谢。如果日期不是现在而是某天作为输入参数会怎样?
最佳答案
也许可以尝试这样的事情:
String where = "strftime('%d.%m.%Y', date(?)) = strftime('%d.%m.%Y', 'now')";
SimpleDateFormat dateFormat = "yyyy-MM-dd";
String [] whereArgs = {dateFormat.format(KEY_END_AT) };
cursor = sqLiteDatabase.query(TABLE_NAME, null, where , whereArgs, null,
null, null);
所有这些都是通过文档搜索输入的,我可能有一些愚蠢的打字错误。如有问题请回信。
编辑 实际上,Harry Joy 的想法似乎更简单,但我会在这里留下我的评论,因为如果您有兴趣按天数以外的其他方式分组,它可能会有用。
关于android sqlite 获取当天有效的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15499177/