0

我得到了具有两个NSDate 属性的实体。它们在这里:startTime, endTime还有两个限制,它们也在这里:NSDate *begin, NSDate *end

但问题是 endTime 可以为零

我需要获取所有实体:

(entity.startTime >= begin) AND (entity.endTyme == nil)

if (endType == nil)

(entity.startTime >= begin) AND (entity.endTyme <= end)

if (endTyme != nil)

如何从这两个 fetch 谓词中进行联合?或者也许使用过滤器?

4

2 回答 2

1

您的设置和谓词是正确的。检查您的数据,您会发现谓词按预期工作。

于 2013-10-13T15:32:00.977 回答
0

备注:您已经对您的问题进行了多次大量编辑。我最好附上 有关您问题的新信息,否则将来的读者很难理解评论和答案。)

要获取开始时间 >= 给定时间且结束时间为nil <= 给定时间的所有对象,可以使用谓词

[NSPredicate predicateWithFormat:@"(startTime >= %@) AND (endTime == nil OR endTime <= %@)",
       startTime, endTime]
于 2013-10-13T20:46:12.893 回答