Core Data 是否为 NSFetchRequest 提供存在性查询?
Does Core Data provide an existential query for NSFetchRequest?
给定一个 NSManagedObjectContext
和一个 NSFetchRequest
,我想知道如果我发出提取请求是否会返回一个非空结果集。
存在方法countForFetchRequest:error:
,可以使用。这看起来肯定比实际执行请求并取回对象(或错误)要好。然而,在很多情况下,知道有一些就足够了:确切的数字根本不重要。
即使您不关心确切的数字是多少,您要问的问题仍然是 "is the count greater than zero"?没有特定的内置方法,因此要求计数并将结果与零进行比较是正确的方法。它在内存和时间方面也更便宜,因为您不需要花时间将不需要的对象提取到内存中。
你可以做一些事情,比如用 fetchLimit
为 1 来执行获取,但那更晦涩(你正在获取你不需要的东西)。
给定一个 NSManagedObjectContext
和一个 NSFetchRequest
,我想知道如果我发出提取请求是否会返回一个非空结果集。
存在方法countForFetchRequest:error:
,可以使用。这看起来肯定比实际执行请求并取回对象(或错误)要好。然而,在很多情况下,知道有一些就足够了:确切的数字根本不重要。
即使您不关心确切的数字是多少,您要问的问题仍然是 "is the count greater than zero"?没有特定的内置方法,因此要求计数并将结果与零进行比较是正确的方法。它在内存和时间方面也更便宜,因为您不需要花时间将不需要的对象提取到内存中。
你可以做一些事情,比如用 fetchLimit
为 1 来执行获取,但那更晦涩(你正在获取你不需要的东西)。