I have a scenario where I need to get some records from a Core Data based on multiple values โโof this column. A general SQL query for this purpose would be
SELECT * FROM suppliers WHERE supplier_name in ('IBM', 'Hewlett Packard', 'Microsoft');
I could not figure out how I'm going to use built-in function IN() for this purpose.
A method of creating NSPredicate currently seems unnecessary and is as follows.
NSMutableArray *predicateArray = [NSMutableArray array]; [skus enumerateObjectsUsingBlock:^(NSString *sku, NSUInteger idx, BOOL *stop) { [predicateArray addObject: [NSString stringWithFormat:@"(AudioSKU == \"%@\")", sku]]; }]; NSString *predicateString = [predicateArray componentsJoinedByString:@" OR "]; NSPredicate *predicate = [NSPredicate predicateWithFormat:predicateString]; ; NSMutableArray *predicateArray = [NSMutableArray array]; [skus enumerateObjectsUsingBlock:^(NSString *sku, NSUInteger idx, BOOL *stop) { [predicateArray addObject: [NSString stringWithFormat:@"(AudioSKU == \"%@\")", sku]]; }]; NSString *predicateString = [predicateArray componentsJoinedByString:@" OR "]; NSPredicate *predicate = [NSPredicate predicateWithFormat:predicateString]; sku, NSUInteger idx, BOOL * stop) { NSMutableArray *predicateArray = [NSMutableArray array]; [skus enumerateObjectsUsingBlock:^(NSString *sku, NSUInteger idx, BOOL *stop) { [predicateArray addObject: [NSString stringWithFormat:@"(AudioSKU == \"%@\")", sku]]; }]; NSString *predicateString = [predicateArray componentsJoinedByString:@" OR "]; NSPredicate *predicate = [NSPredicate predicateWithFormat:predicateString]; == \"% @ \ ")", sku]]; NSMutableArray *predicateArray = [NSMutableArray array]; [skus enumerateObjectsUsingBlock:^(NSString *sku, NSUInteger idx, BOOL *stop) { [predicateArray addObject: [NSString stringWithFormat:@"(AudioSKU == \"%@\")", sku]]; }]; NSString *predicateString = [predicateArray componentsJoinedByString:@" OR "]; NSPredicate *predicate = [NSPredicate predicateWithFormat:predicateString];
Can I use NSPredciate or NSExpression To use IN the SQL? Please enlighten me.
source share