CoreData: найти минимум вычисляемого свойства - PullRequest
2 голосов
/ 26 октября 2009

Скажем, у меня есть сущность CoreData "Точка" с двумя свойствами x и y (оба NSNumber).

Как должен выглядеть NSP-предикат, чтобы я мог найти ближайший пункт, чтобы сказать a, b? для расстояния = sqrt ((x-a) (x-a) + (y-b) (y-b))

Хотя я мог бы определить переходное свойство, которое вычисляет расстояние до предварительно определенной точки, я не вижу, как можно программно изменить эту точку при запуске запроса на выборку.

Любая помощь будет принята с благодарностью.

1 Ответ

6 голосов
/ 26 октября 2009

Извините, но арифметика в NSPredicate не поддерживается. Можно использовать только операторы сравнения. И новости становятся хуже. Вы не можете использовать временное свойство в NSFetchRequest. Только постоянные свойства могут быть использованы. Если вам действительно нужен этот уровень контроля при извлечении ваших объектов, Core Data может не справиться с вами.

...