我有一个具有以下“体系结构”的CoreData模型:我有一个以Session
作为属性的system_version
实体。然后,我有一个带有属性Views (Session<-->>Views)
的delta_time
实体。最后,我有一个带有"UI_Elements" (Views <-->> UI_Elements)
属性的variable_value
实体。我想根据特定的variable_value
值过滤内容,然后显示按delta_time
分组的system_version
平均值。
我已经尝试了以下实现:
var expressionDescriptions = [AnyObject]()
expressionDescriptions.append("views_ui.sessions.systemVersion" as AnyObject)
let expressionDescription = NSExpressionDescription()
expressionDescription.name = "Average Time"
expressionDescription.expression = NSExpression(format: "@avg.views_ui.delta_time_number")
expressionDescription.expressionResultType = .integer32AttributeType
expressionDescriptions.append(expressionDescription)
let fetch = NSFetchRequest<NSFetchRequestResult>(entityName: "UI_Elements")
fetch.predicate = requete
fetch.propertiesToGroupBy = ["views_ui.sessions.systemVersion"]
fetch.resultType = .dictionaryResultType
fetch.sortDescriptors = [NSSortDescriptor(key: "views_ui.sessions.systemVersion", ascending: true, selector: #selector(NSString.localizedStandardCompare(_:)))]
fetch.propertiesToFetch = expressionDescriptions
var results:[[String:AnyObject]]?
不幸的是,我收到以下错误:
CoreData:错误:SQLCore dispatchRequest:异常处理请求:,无效的密钥路径(请求对于仅toOne键路径上的聚合操作):用户信息为(null)的views_ui.delta_time_number,]
我有一个带有以下“体系结构”的CoreData模型:我有一个以system_version为属性的Session实体。然后我有一个Views(Session> Views)实体,其delta_time和...
我终于设法通过如下修改代码来获得期望的结果: