4
我是iOS開發中的新出價。我正在使用核心數據NSManagedObject來執行插入和提取操作。它工作得很好。但問題是,我想從表中只提取一些選定的記錄(MySQL中的條件)。 例如「從城市='浦那'的用戶中選擇姓名」; 我發現NSPredicate獲取過濾的數據。但它提供了數組中的所有數據,而不僅僅是所選數據。對於例如如果結果爲上面的查詢是:如何獲取核心數據中的特定記錄
然後NSPredicate結果會給:
fname = Anu
lname = Padhye
city = Pune
id = 3
有沒有辦法只能在iOS的Objective-C的取選定的記錄/秒?以下是我使用NSManagedObject代碼片段:
NSManagedObjectContext *managedObjectContext = [self managedObjectContext];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] initWithEntityName:@"User"];
valueData = [[managedObjectContext executeFetchRequest:fetchRequest error:nil] mutableCopy];
NSEntityDescription *productEntity=[NSEntityDescription entityForName:@"User" inManagedObjectContext:managedObjectContext];
NSFetchRequest *fetch=[[NSFetchRequest alloc] init];
[fetch setEntity:productEntity];
NSPredicate *p=[NSPredicate predicateWithFormat:@"id == %d", 3];
[fetch setPredicate:p];
//... add sorts if you want them
NSError *fetchError;
NSArray *fetchedProducts=[valueData filteredArrayUsingPredicate:p];
的ID城市的所有記錄非常感謝。這工作得很好:) –
如何在Core Data中添加「group by」邏輯以避免數據重複。 – Developer