我正在尝试从实体获取记录,记录大于5000.所以我想用字母排序(名称参数)获取记录,而不是在结果数组上使用NSSortDescriptor进行排序。
我们是否可以按字母顺序对fetech记录进行排序。
答案 0 :(得分:6)
在NSSortDecriptor
中设置NSFetchRequest *fetchRequest
,就像使用任何谓词一样
[fetchRequest setSortDescriptors:@[[[NSSortSDescriptor alloc] initWithKey:@"name parameter" ascending:YES]]];
这意味着您的请求已按照您的要求进行排序,因为它已被提取。
正如Kaszas已经说过,NSPredicate不是用于排序,而是用于过滤
希望这有帮助
答案 1 :(得分:2)
不,你不能用NSPredicate对数组进行排序。
The NSPredicate class is used to define logical conditions used to constrain a search either for a fetch or for in-memory filtering.
答案 2 :(得分:2)
Swift 4.0
let sortDescriptor = NSSortDescriptor(key: "name", ascending: true)
fetchRequest.sortDescriptors = [sortDescriptor]
https://developer.apple.com/documentation/foundation/nssortdescriptor