0

私が達成しようとしているのは、現在の日付の3日前から現在の日付を含めて現在の日付から3日後の範囲にあるSQLiteデータベースからレコードを取得することです。

これを行う方法、試してみるためにいくつかの例を提案してください。

4

2 に答える 2

1

まず、日付を格納する列は長いタイプである必要があります。この列には、日付のエポックからのミリ秒が格納されます。

今すぐクエリ

    Calendar calendar = Calendar.getInstance(); // This will give you the current time.
    // Removing the timestamp from current time to point to todays date
    calendar.set(Calendar.HOUR_OF_DAY, 0);
    calendar.set(Calendar.MINUTE, 0);
    calendar.set(Calendar.SECOND, 0);
    calendar.set(Calendar.MILLISECOND, 0);
    calendar.add(Calendar.DATE, -3); // Will subtract 3 days from today.
    Date beforeThreeDays = calendar.getTime();
    calendar.add(Calendar.DATE, 6); // Will be your 3 days after today
    Date afterThreeDays = calendar.getTime();

    db.query("Table", null, "YOUR_DATE_COLUMN >= ? AND YOUR_DATE_COLUMN <= ?", new String[] { beforeThreeDays.getTime() + "", afterThreeDays.getTime() + "" }, null, null, null);
于 2013-01-02T10:24:52.847 に答える
0
Select *
From TABLE_NAME
WHERE  DATEDIFF(day, GETDATE(), COLUMN_TABLE) <= 3
于 2013-01-02T10:08:41.117 に答える