如何在ios swift3中从CoreData获取特定范围的数据

如何在ios swift3中从CoreData获取特定范围的数据,ios,swift,core-data,fetch,Ios,Swift,Core Data,Fetch,嗨,我使用下面的代码成功地从coreData中获取数据 class func fetchObject() -> [User]?{ let context = getContext() var user: [User]? = nil do{ user = try context.fetch(User.fetchRequest()) return user }catch{ return user } }

嗨,我使用下面的代码成功地从coreData中获取数据

class func fetchObject() -> [User]?{
    let context = getContext()
    var user: [User]? = nil
    do{
        user = try context.fetch(User.fetchRequest())
        return user
    }catch{
        return user
    }
}
现在我想获取特定范围内的数据


例如,我将一些记录保存为其中的一列。现在我想从coreData表中得到10到20岁的人。我怎样才能做到这一点。请有人来帮我。因为我是ios新手。

您需要使用谓词来过滤数据

    let fetchRequest : NSFetchRequest<User> = User.fetchRequest()
    fetchRequest.predicate = NSPredicate.init(format: "<AgeKey> <= %d && <AgeKey> >= %d", 10,20)
    user = try context.fetch(fetchRequest)
let fetchRequest:NSFetchRequest=User.fetchRequest()
fetchRequest.predicate=NSPredicate.init(格式:“=%d”,10,20)
user=try context.fetch(fetchRequest)

将NSEntityDescription传递给任何查询的fetchrequest,例如,请在使用的fetchrequest之后使用谓词。有关更多详细信息,请参阅此