【问题标题】:cocoa iphone core-data predicate one-to-many fetchrequest可可 iphone 核心数据谓词一对多 fetchrequest
【发布时间】:2010-01-14 22:53:49
【问题描述】:

我有一组数据,其中一个属性(固件)是一对多关系。

如果我想获取固件 ID 为 1 的任何记录,我可以使用创建谓词

@"(ANY Firmware.FID==1)"

然后我有另一组条件,将进一步细化该组使用

(TopLevel==YES) AND (Parent>0)

如何将它们组合或设置,以便首先过滤固件,然后过滤第二个条件?最终我想要 Firmware.FID=1 和 TopLevel==YES 和 Parent>0 的所有记录。

谢谢, 豪伊

【问题讨论】:

    标签: cocoa core-data one-to-many nspredicate nsfetchrequest


    【解决方案1】:

    你应该可以使用这个谓词:

    [NSPredicate predicateWithFormat:@"TopLevel == %@ AND Parent > %@ AND ANY Firmware.FID == %@",[NSNumber numberWithBool:YES],[NSNumber numberWithInteger:0],[NSNumber numberWithInteger:1]];  
    

    我最后将“ANY Firmware.FID”上的条件移到了最后,因为它是最复杂的,如果其他条件之一已经失败,则可以避免。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多