У меня есть недружественный массив словарей, которые, в свою очередь, имеют массивы данных, и я пытаюсь отфильтровать внешний массив на основе любого внутреннего массива, передающего предикат. Я не могу создать NSPredicate для выполнения этой работы. Я начал с:Синтаксис подзапроса NSPredicate
NSPredicate *lookupPredicate = [NSPredicate predicateWithFormat:
@"row_values.property_id == %@ AND row_values.property_value == %@",
@"47cc67093475061e01000540", @"Male"];
[dataRows filterUsingPredicate:lookupPredicate];
Это не возвращает никаких значений. Я пробовал различные формы ЛЮБОГО, но я не могу найти ничего, что он проанализирует. Опять же, цель состоит в том, чтобы сохранить только те внешние словари, где предикат для ЛЮБОГО содержимого словаря внутреннего массива является истинным. Я вижу, как я пережевываю день на выяснение заклинания, чтобы сделать эту работу ... любые идеи?
dataRows:
(
{
row = 1;
"row_values" = (
{
"property_id" = 47cc67093475061e01000542;
"property_value" = "Mr.";
},
{
"property_id" = 47cc67093475061e01000540;
"property_value" = Male;
}
);
},
{
row = 2;
"row_values" = (
{
"property_id" = 47cc67093475061e01000542;
"property_value" = "Ms.";
},
...
}
}
Возможный дубликат [Где найти документацию функции SUBQUERY для NSPredicate для основных данных?] (Http://stackoverflow.com/questions/3076618/where-to-find-the-documentation-of-the- subquery-feature-of-nspredicate-for-core) – Senseful