【发布时间】:2011-03-11 23:23:24
【问题描述】:
我使用NSPredicate 和几个<= 构造从Core Data 存储中获取对象,在2 个日期之间具有startDate 属性,但我获取了0 个对象。
这是我的 NSPredicate:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"( ( %@ <= %K ) && ( %K <= %@ ) )", fromDate, @"startTime", @"startTime", toDate];
这是控制台输出:
predicate: CAST(336261600.000000, "NSDate") <= startTime AND startTime <= CAST(339285599.000000, "NSDate")
[sectionInfo numberOfObjects]: 0
以下是 Core Data 中的日期(属性类型设置为日期):
startTime
---------
337249800
337309200
337318200
fromDate 和 toDate 都是 NSDate 对象。我已经尝试用distantPast 和distantFuture 替换它们,以完全确保我的核心数据startTime 属性在日期范围内,并且我仍然获取了0 个对象。
我不知道为什么返回 0 个对象。谁能看出我哪里出错了?
【问题讨论】:
标签: core-data nsdate nspredicate