0
所以我有典型的1:M關係:核心數據,結果中過濾掉子實體設置
Car can have many Models
我想以「A」開頭的車對象,只有型號名稱。
我嘗試了子查詢:
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Car" inManagedObjectContext:_context];
[fetchRequest setEntity:entity];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SUBQUERY(models, $model, $model.name BEGINSWITH 'A')[email protected] > 0"];
[fetchRequest setPredicate:predicate];
這將基本上返回Car
,只要它具有與 'A' 開頭的模型。這很好,但所有那些Car
s返回,它也返回所有Model
s,我只想要那些以'A'開頭的那些
但是,似乎只要我操作更高級別的實體(Car ),那麼子查詢只會過濾Cars
,根本不會過濾Models
。
我現在正在做的是在內循環中過濾Models
(使用另一個NSPredicate
),但我寧願在SQL端進行這種過濾。
想法?
是啊,這件事情我到達。先通過Models入門,然後找回汽車。我喜歡你的KVC方法。 謝謝! – Maverick 2010-10-07 23:16:27