如何对存储的核心数据的数字(Int16)求和 - Swift 3(How to sum the numbers(Int16) of stored core data - Swift 3)
我已经在核心数据中存储了字母(String),数字(Int16)和日期(Date)。 过滤器(NSPredicate)成功地只组织了必要的数据。
我想得到这个核心数据中数字的总和。
实体名称:实体 属性名称:字母(字符串),值(Int16),日期(日期) let context = (UIApplication.shared.delegate as! AppDelegate).managedObjectContext let entityDesc: NSEntityDescription = NSEntityDescription.entity(forEntityName: "Entity", in: context)! let request: NSFetchRequest<NSFetchRequestResult> = NSFetchRequest() request.entity = entityDesc // Omit date NSFormatter let dateCheck = formatter.string(from: today) request.predicate = NSPredicate(format: "Date == %@", dateCheck) let records = try! context.fetch(request)我不知道接下来该做什么。 我是一名发展初学者,希望有人可以提供帮助。
I have stored the letters(String), numbers(Int16) and Date(Date) in the core data. And the filter(NSPredicate) succeeded in organizing only the necessary data.
I want to get the total sum of the numbers in this core data.
Entity Name : Entity Attribute Name : Letter(String), Value(Int16), Date(Date) let context = (UIApplication.shared.delegate as! AppDelegate).managedObjectContext let entityDesc: NSEntityDescription = NSEntityDescription.entity(forEntityName: "Entity", in: context)! let request: NSFetchRequest<NSFetchRequestResult> = NSFetchRequest() request.entity = entityDesc // Omit date NSFormatter let dateCheck = formatter.string(from: today) request.predicate = NSPredicate(format: "Date == %@", dateCheck) let records = try! context.fetch(request)I do not know what to do next. I am a beginner in development and hope someone can help.
最满意答案
您已经获取了记录,因此以这种方式获取Value属性的总和。
try! context.fetch(request) as! [NSManagedObject] let sum = result.reduce(0) { $0 + ($1.value(forKey: "Value") as? Int16 ?? 0) } print(sum)You have already fetch the records, so get the sum of the Value attribute this way.
try! context.fetch(request) as! [NSManagedObject] let sum = result.reduce(0) { $0 + ($1.value(forKey: "Value") as? Int16 ?? 0) } print(sum)更多推荐
发布评论