См. также
Основные данные сортируются по дате с помощью FetchedResultsController в разделы
Есть ли способ группировать объекты из объекта CoreData по дате и использовать их для создания нескольких разделов в элементе управления UITableView?
По сути, мне нужно что-то эквивалентное следующему псевдо-SQL, где my_group_criteria() группирует все тесты по дням:
SELECT * FROM tests GROUP BY my_group_criteria(date)
В качестве примера, запрос сгруппировал следующие строки в 3 отдельных раздела:
[test1 | 2013-03-18 15.30.22]
[test2 | 2013-03-18 14.30.22]
[test3 | 2013-03-18 13.30.22]
[test4 | 2013-03-17 18.30.22]
[test5 | 2013-03-17 19.30.22]
[test6 | 2013-03-15 20.30.22]
Как уже было сказано в 2, NSPredicate не предназначен для группировки объектов, поэтому это может быть не так.
Учитывая это, как мне заняться созданием нескольких разделов в UITableView на основе некоторых критериев, аналогичных тем, что будет делать SQL GROUP BY?
Я хотел бы избежать доступа к базе данных SQL-lite напрямую, если это вообще возможно.
Связанный вопрос 1: NSPredicate: фильтрация объектов по дням свойства NSDate
Связанный вопрос 2: NSPredicate что-то эквивалентное SQL GROUP BY