何时索引核心数据属性?

时间:2012-04-22 15:23:07

标签: performance core-data indexing nspredicate nssortdescriptor

在哪种情况下我应该索引核心数据属性?

  1. 当我按它排序时?

    fetchRequest.sortDescriptors =
    [NSArray arrayWithObject:[NSSortDescriptor
                              sortDescriptorWithKey:@"name" ascending:YES
                              selector:@selector(localizedStandardCompare:)]];
    
  2. 当我过滤它时?

    fetchRequest.predicate = [NSPredicate predicateWithFormat:
                              @"name BEGINSWITH[cd] %@", searchString];
    
  3. 其他任何案件?

1 个答案:

答案 0 :(得分:1)

我认为,你可以在两种情况下都这样做,假设你会对这个属性做很多工作,而且它本身很大,并且在没有索引列的情况下进行提取会花费很多。