2011-04-05 46 views
0

以前沒有問過這個問題,但我無法在任何地方找到明確答案。核心數據 - NSPredicate - 查找等於0但不爲空的屬性

我有核心數據實體具有可選的「整數32」屬性。我試圖設置一個謂詞來檢索那個屬性等於零但不爲null的所有對象。

attributes.power == nil AND attributes.power == 0 

這不是做這項工作。這沒有結果。刪除複合謂詞的前半部分將返回零和空值。

任何幫助是極大的讚賞。

+0

我解開你的問題中的操作符,因爲沒有錯誤,接受的答案沒有任何意義。 – benzado 2011-09-05 03:32:49

回答

8

這可能是一個簡單的拼寫錯誤,但我相信你想要的謂詞

attributes.power != nil AND attributes.power == 0 
+0

哎呀,是的,在我的問題中只是一個錯字。感謝您的支持。我編輯了我的問題。 – dontGoPlastic 2011-04-05 02:17:07

+0

雖然這次不是我的問題(我有一個完整的骨頭時刻......),但事實上,它的工作方式與預期一致。感謝發佈^ _^ – dontGoPlastic 2011-04-05 05:33:59

+2

@dontGoPlastic,很高興我可以幫助您讓您再次查看代碼。我稱之爲沃克定律:在軟件開發中任何足夠複雜的問題都會在尋求幫助時立即由提問者解決。 – 2011-04-05 13:24:02

-2

你爲什麼不嘗試使用可選的「字符串」屬性,而不是,然後將它們轉換爲整數。
或者,您可以使用'-1'來表示無效值並將其作爲屬性的默認值。

+1

你可能不想使用字符串來存儲整數,即使它有方便的可選屬性。我會爭辯說,轉換步驟引入的額外錯誤已經足夠令人震驚。 – noobular 2013-06-15 22:31:57

+0

我同意String屬性在這裏可能不是一個好的解決方案。如果使用抽象層進行正確管理,轉換可以提供方便靈活的可選屬性。但我仍然同意你的看法,你可以避免它。 – 2014-08-23 05:12:19