반응형
NOT IN을 사용하는 NSPredicate가있는 NSArray
NSPredicate를 사용하여 특정 개체를 필터링하려는 NSArray가 있는데, IN을 쉽게 할 수 있다는 것을 알았 기 때문에 NOT IN을 사용할 수 있기를 바랐습니다.
그래서 내 배열이 있습니다.
self.categoriesList
그런 다음 제거하려는 값을 얻습니다.
NSArray *parentIDs = [self.cateoriesList valueForKeyPath:@"@distinctUnionOfObjects.ParentCategoryID"];
이것은 표시하고 싶지 않은 범주에 대한 ParentCategoryID 목록을 제공하므로 NSPredicate를 사용하여 제거 할 수 있다고 생각합니다.
self.cateoriesList = [self.cateoriesList filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"CategoryID NOT IN %@",parentIDs]];
이것은 실패합니다.
reason: 'Unable to parse the format string "CategoryID NOT IN %@"'
IN 만 사용하고 싶다면 물론 완벽하게 작동합니다.
어때 NOT (CategoryID IN %@)
?
사용은 NONE
어떻습니까?
[NSPredicate predicateWithFormat:@"NONE CategoryID IN %@", parentIDs];
참고 URL : https://stackoverflow.com/questions/8580715/nsarray-with-nspredicate-using-not-in
반응형
'developer tip' 카테고리의 다른 글
Java는 음수로 모듈러스 계산을 어떻게 수행합니까? (0) | 2020.09.11 |
---|---|
EF 4.1 예외 "공급자가 ProviderManifestToken 문자열을 반환하지 않았습니다." (0) | 2020.09.11 |
자바 스크립트 : .forEach ()와 .map ()의 차이점 (0) | 2020.09.11 |
Clojure에서 목록 유형간에 쉽게 변환 할 수있는 방법이 있습니까? (0) | 2020.09.11 |
Android에서 맞춤형 키보드를 어떻게 만들 수 있습니까? (0) | 2020.09.11 |