class Question: Object {
var answers = List<Answer>()
}
class Answer: Object {
dynamic var date: NSDate? = nil
dynamic var question: Question!
dynamic var correct = false
}
我的数据库中填充了Questions
。当用户回答问题时,会创建一个Answer对象,其中包含今天的日期以及答案是否正确。
使用Realm,是否可以使用最少数量的正确答案在数据库中查找问题?
我试过
realm.objects(Question).filter("answers.@count == @min AND answers.correct == true")
但是聚合函数不能与其他聚合函数结合使用,似乎@count
和@min
不能在同一个查询中使用。
答案 0 :(得分:1)
目前,没有简单的方法来查询您想要获得的结果。
简单的解决方案是添加count
属性以获得Question
对象的正确答案。
class Question: Object {
let answers = List<Answer>()
dynamic var correctAnswerCount = 0
}
然后,您可以查询具有最少数量正确答案的问题。
let fewest = realm
.objects(Question)
.sorted("correctAnswerCount", ascending: true).first