繁体   English   中英

如何断言首次出现在fetchRequest上

[英]How to predicate for first occurrence on a fetchRequest

我试图找到一种在给定日期发生事件的断言的方式。 假设某事件在一天中发生了多次(范围为1-16),我只希望它返回第一个事件,然后在第二天寻找下一个第一个事件。

您将无法通过一个fetchRequest执行此操作; 您需要做两个。

对于每一天,只需使用谓词以限制在该天开始之后出现的次数,就按日期的升序排序,并且仅获取一项:

NSFetchRequest *request = [[NSFetchRequest alloc] init];
request.entity = [NSEntityDescription entityForName:@"YourObject" inManagedObjectContext:context];
request.predicate = [NSPredicate predicateWithFormat:@"date > %@", beginningOfDay];
request.sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"date" ascending:YES]];
request.fetchLimit = 1;

当然,您需要检查所获得的物品以确保它仍在同一天。 然后,第二天重复一次。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM