如何在Realm上进行计数查询?
例如这是我的模型
class Dog: Object {
dynamic var name = ""
}
class Person: Object {
dynamic var name = ""
let dogs = List<Dog>()
}
我想找至少一只狗的所有人
之类的东西Realm().objects(Person).filter("dogs.@count > 0")
但是@count并不是我理解的
答案 0 :(得分:5)
是的,Realm仍然不支持.@count
查询。您可以解决修改Person
模型以获得count
属性的问题。然后在将狗对象追加到count
数组时更新dogs
属性。
问题#1166 https://github.com/realm/realm-cocoa/issues/1166
会跟踪此功能请求 Realm支持@count
以及v0.96中的其他集合查询。
答案 1 :(得分:3)
@count
和{{@min
的新聚合表达式(@max
,@sum
,@avg
,Results
,List
)的语法1}}看起来像这样:
realm.objects(Person.self).filter("dogs.@count > 0")