というテーブルで述語検索を実行していますTodolists
。Todolists
持っていtodos
ます。
私は、が特定の場所またはがどこにあるかをすべて取得しようとしてTodolists
います。due_at (Date)
<=
Date
due_at Date
nil
次の述語は正常に機能し、特定の日付より前のすべてのTodolists
場所を取得します。Todos
NSDate *now = [NSDate date];
int daysToAdd = _dueDateSlider.intValue;
NSDate *datePeriod = [now dateByAddingTimeInterval:60*60*24*daysToAdd];
NSPredicate *pred = [NSPredicate predicateWithFormat:@"ANY todos.due_at <= %@", datePeriod];
ただし、次のNSPredicate
検索では、があり、がである場合でも、すべての結果が返さdue_at Date
れますnil
。
NSPredicate *pred = [NSPredicate predicateWithFormat:@"ANY todos.due_at = nil"];
テーブルを検索するdue_at = nil
とうまくいくようですが、結合検索で実行するとうまくいきません。NSPredicate
Todos
目標は、この作業を行うことです。
NSPredicate *pred = [NSPredicate predicateWithFormat:@"ANY todos.due_at <= %@ OR todos.due_at = nil", datePeriod];
結合テーブルでnil値を述語検索するにはどうすればよいですか?
=======更新======
私はこれを述語として使用しようとしました:
NSPredicate *pred = [NSPredicate predicateWithFormat:@"(todos.due_at <= %@) || (todos.due_at = nil)", datePeriod];
ただし、次のエラーが発生します。
-[__NSArrayI compare:]: unrecognized selector sent to instance 0x1001e36b0