I'm tryig to get the ítem with max id using this query
Filters alone cannot do what you're after as they only consider a single top-level object at a time.
Beyond that conceptual issue, there are a few issues with the code you posted:
@"@max.id" is not a valid
NSPredicate format string.
NSPredicate format strings must be composed of comparisons between expressions, not expressions on their own.
Collection operators such as
@max must be applied to a collection. In your example it is being applied to an
Entity. Since an
Entity is not a collection, the predicate would not be valid. It would be valid to apply a collection operator to a
List property on
Something like the following should do what you're after:
let entities = realm.objects(Entity) let id = entities.max("id") as Int? let entity = id != nil ? entities.filter("id == %@", id!).first : nil