【发布时间】:2015-04-07 15:31:40
【问题描述】:
我有一个数据库表并使用 UTC 日期时间存储一个日期时间列,iOS [NSDate date] 总是返回一个 UTC 日期时间。这一切都很好。
我正在使用 FMDB 通过以下代码获取最近 12 小时和 24 小时的数据。
[self.fmQueue inDatabase:^(FMDatabase *db)
{
NSString* queryCommand = [NSString stringWithFormat:@"SELECT * FROM %@ WHERE %@ >= Datetime('?')", readingsTable, dateTimeRecordedColumn];
NSDate* dateBefore24Hours = [self.dateUtilities dateBySubtractingDays:1 forDate:[NSDate date]];
WEELogDebug(@"Date before 24 hours: %@", dateBefore24Hours);
FMResultSet* result = [db executeQuery:queryCommand, dateBefore24Hours];
if (completionblock)
{
completionblock([self readingsArrayFromResultSet:result]);
}
}];
我需要完成的是检索在dateBefore24Hours 变量之后具有日期的所有数据。调试消息显示正确的值,例如 [NSDate date] now before 24 是 Date before 24 hours: 2015-04-06 15:28:08 +0000,所以我应该使用上述查询获取直到 2015-04-07 15:28:08 +0000 的所有记录,但我没有。
通过 SQLite Studio,我可以为您提供我目前在数据库中的记录。
【问题讨论】:
标签: ios objective-c sqlite datetime fmdb