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

时间:2018-03-26 05:54:46

标签: ios 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表中获得仅10到20岁的人。我怎样才能做到这一点。请有人帮助我。因为我是ios的新手。

1 个答案:

答案 0 :(得分:0)

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

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