2012-11-27 5 views
0

나는 다음과 같은 자 NSPredicate이 :이 특정 URL 및 유형 (강조 표시 또는 highlightedandsaved)와 이야기를 가져 오기 위해 원자 NSPredicate를

fetchRequest.predicate = [NSPredicate predicateWithFormat:@"url = %@ AND type = %@ OR type = %@", newsStory.url, [NSNumber numberWithInt:StoryHighlighted], [NSNumber numberWithInt:StorySavedAndHighlighted]]; 

합니다. 그러나 위의 쿼리는 작동하지 않는 것 같습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변

7

혼란을 줄이기 위해 대괄호에 OR을 싸는 것만 큼 간단합니까?

fetchRequest.predicate = [NSPredicate predicateWithFormat:@"url = %@ AND (type = %@ OR type = %@)", newsStory.url, [NSNumber numberWithInt:StoryHighlighted], [NSNumber numberWithInt:StorySavedAndHighlighted]]; 
1

당신이 할 시도 할 수 있습니다 :

fetchRequest.predicate = [NSPredicate predicateWithFormat:@"url = '%@' AND(type = %@ OR type = %@"), newsStory.url, [NSNumber numberWithInt:StoryHighlighted], [NSNumber numberWithInt:StorySavedAndHighlighted]]; 
관련 문제