У меня есть базовое приложение данных, и я хотел бы получить результаты из db на основе определенных параметров. Например, если я хочу захватить только события, произошедшие на прошлой неделе, и события, произошедшие за последний месяц. Лучше ли делать выборку для всего объекта, а затем работать с этим массивом результатов, чтобы создавать массивы из этого для каждой ситуации или лучше использовать предикаты и делать множественные выборки?Чем эффективнее Core Data Fetch или манипулировать/создавать массивы?
ответ
Ответ зависит от множества факторов. Я рекомендовал бы ознакомиться с описанием документации для various store types. Например, если вы используете тип хранилища SQLite, гораздо эффективнее правильно использовать предикаты диапазона дат и извлекать только те, которые указаны в заданном диапазоне.
С другой стороны, скажем, вы используете нестандартный атрибут, например, поиск подстроки в зашифрованной строке - вам нужно будет вытащить все, расшифровать строки, выполнить поиск и отметить совпадения.
В дальнем конце спектра у вас есть двоичный тип хранилища, что означает, что все это всегда будет вытаскиваться в память независимо от того, какие вы делаете.
Чтобы получить более конкретный ответ, вам необходимо описать вашу модель управляемых объектов и типы получателей, которые вы планируете сделать.
- 1. Combo Core Data Fetch
- 2. Core Data Fetch
- 3. избежать дублирующихся результатов в Core Data fetch
- 4. О NSPredicate в Core Data Fetch
- 5. IOS Core data fetch-request - сортировка
- 6. Core Data Fetch Request Relationship Атрибут Предикат
- 7. Что такое Core Data Source Fetch
- 8. Чем эффективнее код, чем код?
- 9. Is + = эффективнее, чем concat?
- 10. Объект Fetch Core Data из UITableViews, не сделанный из Core Data
- 11. Ошибка Weird Core Data
- 12. Core Data fetch не работает на реальном устройстве - Core Data Swift 3
- 13. Fetch from Core Data, отсортированные по дате форматирования
- 14. Почему Core Data быстрее, чем SQLite
- 15. EXC_BAD_ACCESS (code = 1, address = 0x10) on Core Data Fetch
- 16. iOS Core Data fetch в фоновом режиме, вызывающем сбой
- 17. Swift Core Data Fetch результаты с определенной даты
- 18. iOS Core Data to-many отношение insert/fetch
- 19. UPDATE значительно эффективнее, чем INSERT?
- 20. Оптимизация, сокращение запросов Core Data или нет?
- 21. Android Fetch Internet Data
- 22. Fetch TweetTimelineListAdapter's data
- 23. Core Data multi-NSManagedObjectContext puzzle
- 24. UISlider core data programing
- 25. Iphone Core data question
- 26. PHP Bind_param fetch data
- 27. Fetch: POST json data
- 28. Python fetch data 403
- 29. Json data fetch fail
- 30. Fetch contenteditable = true data
Я использую тип хранилища SQLite. То, что я пытаюсь сделать, - генерировать статистику на основе заданного интервала времени, поэтому получить среднее значение элемента за неделю, 30 дней и год. Поэтому я пытался выяснить, лучше ли создавать 3 разных выборки с разными предикатами или вместо этого просто захватывать сущность, а затем перечислять через возвращаемый массив, нажимая соответствующие значения даты на разные массивы для расчета? – adam0101
Опишите вашу модель? Какова статистика/даты, представленные в вашем M.O.M.? Кроме того, видели ли вы операторы набора и массива? http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/KeyValueCoding/Concepts/ArrayOperators.html –