android sqlite 获取当天有效的行

标签 android sqlite datetime

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/

相关文章:

android - 使用附加上下文改进 Android 语音识别

java - 如何在android中读取另一个应用程序数据库

python - 使用 Python 连接到远程 sqlite3 数据库

c# - 从包含小数点和逗号毫秒分隔符的字符串转换为 DateTime

Swift - 计算耗时需要太长时间?

python - 将 QdateTime 转换为普通的 python dateTime?

Android等待网络可用

java - 通过多个函数返回

java - Android 应用程序的 main() 函数的最佳等价物是什么?

Android中的SQLite全文搜索unicode