How can I do a count query on Realm?
for example this is my model
class Dog: Object {
dynamic var name = ""
}
class Person: Object {
dynamic var name = ""
let dogs = List<Dog>()
}
I want to fetch all persons with at least one dog something like
Realm().objects(Person).filter("dogs.@count > 0")
but @count isn't supported as i understand
Yes, Realm still does not support .@count
query. You can work around that you modify the Person
model to have a count
property. Then you update the count
property when you append a dog object to the dogs
array.
This feature request is tracked by Issue #1166 https://github.com/realm/realm-cocoa/issues/1166
Realm supports @count
and other collection queries from v0.96.
The syntax for the new aggregate expressions (@count
, @min
, @max
, @sum
, @avg
) for Results
and List
looks like this:
realm.objects(Person.self).filter("dogs.@count > 0")
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With