我在我的领域数据库中有一个书籍列表,因此我在查询数据库:
Realm realm = Realm.getDefaultInstance();
RealmResults<Book> bookCategories = realm.where(Book.class).distinctAsync("category").sort("category");
这是按预期工作但我遇到了问题。某些类别的某些书籍没有书籍封面。
例如:有一个名为“Thrillers”的类别,该类别有10本书;无论是否有书籍封面,上述查询都会返回该类别中的第一个项目。所以我希望它忽略第一个项目,如果它没有书籍封面并继续跳过,直到找到带有书籍封面的项目。但是,如果它到达最后一个项目并且它仍然没有书籍封面,那么它应该选择它。
请问有没有办法实现这一目标?
注意:
带有封面的图书有blah-blah.png
作为封面值,而没有封面,封面的值返回null
或空字符串。
答案 0 :(得分:0)
RealmResults<Book> bookCategories = realm.where(Book.class)
.isNotNull("coverUrl")
.isNotEmpty("coverUrl")
.findAllSorted("category")
.distinctAsync("category");
编辑:由于核心https://github.com/realm/realm-core/issues/2332的限制,显然这还不起作用
我将在这个问题上引用这个问题。