我希望加快对SQL支持的CoreData实例的查询速度(显示按日期排序的记录)。我知道索引可以帮助减少查询时间,但在以下方面有什么区别:
突出显示属性所属的实体,然后在索引字段中添加逗号分隔的属性列表,如下所示:

或者高亮显示属性,然后检查索引框,如下所示:

发布于 2016-07-15 06:49:05
向Indexes列表中添加一个属性的行相当于为该属性选择Indexed:它为属性创建一个索引,以加快查询语句中的搜索速度。
Indexes列表用于复合索引。当您知道要搜索在查询的WHERE子句中组合的这些属性的值时,复合索引非常有用:
SELECT * FROM customer WHERE surname = "Doe" AND firstname = "Joe";该语句可以使用复合索引surname, firstname。如果只搜索surname,而只搜索firstname,则该索引也将是有用的。把索引想象成电话簿一样:它先按姓氏排序,然后再按名字排序。所以属性的顺序很重要。
在您的示例中,您应该首先选择单个索引(即选择Indexed作为您想要搜索的属性)。例如,如果只搜索babyId,则无法使用所显示的复合索引。
发布于 2018-02-08 16:20:51
在WWDC 2017上,苹果更新了它,使用Fetch Index(参见:https://developer.apple.com/videos/play/wwdc2017/210/?time=997)添加它,然后选择实体,然后转到Editor -> Add Fetch Index。
https://stackoverflow.com/questions/35907115
复制相似问题