Базовые данные, NSPredicate, ЛЮБОЙ key.path == ноль
Я нашел решение этой проблемы с помощью подзапроса, но я не понимаю, почему то, что я пытался сделать первым, не сработало.
Вот моя модель данных. Я получаю советы.
Я могу сделать следующее в качестве предиката:
[NSPredicate predicateWithFormat:@"ANY conditions.terrain == %@", aTerrainObject];
это прекрасно работает и возвращает любой совет, если хотя бы одно из его условий имеет этот тип местности.
Однако, когда я пытаюсь сделать это, это терпит неудачу:
[NSPredicate predicateWithFormat:@"ANY conditions.terrain == nil"];
То, что я хочу сделать, это вернуть любой совет, где хотя бы в одном из его условий не установлен тип местности.
Тем не менее, следующее работает:
[NSPredicate predicateWithFormat:@"SUBQUERY(conditions, $x, $x.terrain == nil).@count > 0"];
Может кто-нибудь объяснить, почему при поиске ноль я не могу использоватьANY
синтаксис?