【问题标题】:Getting a count of records in a core data entity获取核心数据实体中的记录计数
【发布时间】:2011-03-12 04:11:03
【问题描述】:

有人知道提供核心数据实体中记录计数的现有函数或属性吗?

【问题讨论】:

标签: objective-c core-data


【解决方案1】:

我相信最好的方法是通过 NSManagedObjectContext 的countForFetchRequest:error:

它的工作方式与常规的 fetch 请求一样,只是它只返回计数,因此可能会更加优化。

【讨论】:

  • 肯定更优化了。
  • @Marcus:是的,我在那里对冲的原因仅仅是因为我没有使用所有的后备商店,并且可能会有一个没有可用的快捷方式来计算。跨度>
  • 即使在 xml 存储(性能最低的存储)上,Count 也总是更有效,因为它不会因为获取而构造对象。
  • 链接好像坏了。可以更新一下吗?
  • @Vishal 我刚刚做了。但是您也可以编辑旧帖子来做到这一点!只是a google search away…。
【解决方案2】:
   func getRecordsCount() {
        let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: _entityName)
        do {
            let count = try context.count(for: fetchRequest)
            print(count)
        } catch {
            print(error.localizedDescription)
        }
    }

【讨论】:

    【解决方案3】:

    我认为获取 numberofdata 的最佳方法是

    func getNumberofData(){
            let userFetchRequest = NSFetchRequest<NSNumber>(entityName: "entityName")
    
            userFetchRequest.resultType = .countResultType
            do {
    
                let counts: [NSNumber] = try! context.fetch(userFetchRequest)
                let count = counts[0]
            }
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-02
      • 2011-06-06
      相关资源
      最近更新 更多