我有一個核心數據對象和我有2個Fieds(一個字符串(GUID)和一個詮釋,我想作爲過濾器使用)NSPredicate用斯威夫特和核心數據
所以在SQL這將是「SELECT *從答案WHERE qIndex = 1 AND GUID =「88bfd206-82fb-4dd0-B65D-096f8902855c」
我用盡它與核心數據,但我不能與字符串值進行過濾。
這裏是我的代碼
var request = NSFetchRequest(entityName: "Answers")
request.returnsObjectsAsFaults = false;
let resultPredicate1 = NSPredicate(format: "qIndex = %i", qIndex)
let resultPredicate2 = NSPredicate(format: "formUUID = %s", formUUID)
var compound = NSCompoundPredicate.andPredicateWithSubpredicates([resultPredicate1, resultPredicate2])
request.predicate = compound
var results:NSArray = context.executeFetchRequest(request, error: nil)
任何想法我在做什麼錯誤?使用相同的代碼和2個整數值篩選它工作正常。
由於提前
您使用了字符串格式說明符%i。我認爲它應該是一個十進制的%d或一個NSNumber的%@。不是%i,不存在int,不存在 – Obenland
@Xean:可以使用「%d」和「%i」格式化一個int,它們是相同的。 –
爲什麼結果不是空的時候沒有任何匹配?我得到[(entity:Charts; id:0xd000000000040000 ; data:)] –