Я пытаюсь получить данные от CoreData
, используя NSPredicate
. Проблема заключается в том, мне нужно только сравнить первую цифру стоимости объекта:NSPredicate получение первой цифры
class Foo: NSManagedObject {
@NSManaged var value: NSNumber // random number 1xx - 7xx
}
Мой текущий предикат сравнения полное значение:
NSPredicate(format: "value == %d", 5)
Я также попытался с помощью .filter
вместо но после тестирования он показывает, что в моем случае он в два раза медленнее.
Вопрос:
Как я должен изменить свой предикат, чтобы он мог сравнить первую цифру value
?
Все ли цифры имеют 3 цифры? Тогда 'NSPredicate (format:" value> =% d AND value <=% d ", 500, 599)' будет работать. –
@MartinR Да, все они имеют 3 цифры, но то, что я не объяснил правильно, состоит в том, что '5' является динамическим числом. Это может быть между '0' и' 10'. –