我想查询CloudKit以获取具有空白日期(0/00/0000 00:00:00)的所有记录,并且我不知道如何创建将执行此操作的谓词。
这是我尝试过的,以及相关的错误:
let predicate = NSPredicate(format: "ready == nil") // <ready != nil>: <nil> is not a function expression
let predicate = NSPredicate(format: "ready == NIL") // <ready == nil>: <nil> is not a function expression
let predicate = NSPredicate(format: "ready != NULL") // <ready != nil>: <nil> is not a function expression
let predicate = NSPredicate(format: "ready == %@", NSNull()) // NSNull not allowed in comparison expression
let predicate = NSPredicate(format: "ready == $NULL") // Unable to parse the format string "ready == $NULL"
let predicate = NSPredicate(format: "ready == $BLANK") // <ready == $BLANK>: <$BLANK> is not a function expression
let blankDate: Date = Date.init()
let predicate = NSPredicate(format: "ready == %@", blankDate as NSDate)
let haveADate = NSPredicate(format: "ready > %@", NSDate.distantPast as NSDate)
let predicate = NSCompoundPredicate(notPredicateWithSubpredicate: haveADate) // Inverting a valid one doesn't work either
答案 0 :(得分:1)
我认为您的问题类似于this one。
您应该尝试使用"ready == %@"
与两个参考值进行比较,而不是"(ready >= %@) AND (ready <= %@)"
。