2010-04-06 80 views
2

我想從CoreData中檢索最近添加的記錄。我想知道是否可以使用NSPredicate?如果是這樣,怎麼樣?iPhone開發 - 使用NSPredicate從CoreData中檢索最近添加的記錄

例如我在部門和職員之間有一對多的關係,我想獲取最近僱用的職員記錄。職員表有一個可以使用的日期字段。

我不想獲取所有員工記錄,然後尋找合適的人。請注意,CoreData將相關記錄存儲在NSSet中。

回答

5

我不認爲謂詞會做你在這裏問的。相反,您可以執行的操作是使用設置了排序描述符的單個記錄來按降序對日期進行排序。您需要修改您的讀取請求包括以下內容:

NSSortDescriptor *dateSort = [[NSSortDescriptor alloc] initWithKey:@"date" ascending:NO]; 
[fetchRequest setSortDescriptors:[NSArray arrayWithObject:dateSort]]; 
[fetchRequest setFetchLimit:1]; 

這應該讓你的員工對象與最近的日期屬性。請注意,如果您正在使用SQLite存儲,那麼排序將在SQLite層完成,並且僅提取單個結果。

+0

我認爲這會很好地工作。謝謝。 – Mustafa 2010-04-06 14:59:57