How do I set up a NSPredicate to look for objects that have a nil attribute

mezulu picture mezulu · Apr 21, 2011 · Viewed 34.2k times · Source

I have a ManagedObject class, and one of the members of the class is a NSDate. I would like to display all objects of the class for which the date is NOT set. I tried using a predicate like this:

NSPredicate *predicate = [NSPredicate predicateWithFormat: @"(date = NIL)"];

But I still get objects where the date is set. What is the right way to set up a predicate for this?

Answer

Christopher Pickslay picture Christopher Pickslay · Oct 17, 2011

I think it's a case sensitivity issue. You can use "nil" or "NULL", but not "NIL". This works fine for me:

NSPredicate *eventWithNoEndDate = [NSPredicate predicateWithFormat:@"endDate = nil"];