SugarOrm:OrderBy相关表

时间:2015-09-14 12:42:36

标签: android sugarorm

使用SugarORM,我理解在一段关系中我可以做到这一点

public class Book extends SugarRecord<Book> {
  String name;
  String ISBN;
  String title;
  String shortSummary;

  // defining a relationship
  Author author;
}

如何在Book.class上查找,以便我可以由作者订购。

我试过了

Book.find(Book.class, null, null, null, "author.id desc",null);;

Book.find(Book.class, null, null, null, "author desc",null);;

所有这些都不会起作用

2 个答案:

答案 0 :(得分:9)

对于简单查询,建议使用the query builder approach,例如:

Select.from(Book.class)
.orderBy("ISBN")
.list();

无论如何,请记住,SugarORM基于SQLite,在您的特定情况下,您尝试通过关系进行排序。然后你应该建立一个带连接的自定义查询,并按表作者的字段(id,name,surname等等...根据你的目的建立)

答案 1 :(得分:3)

我的建议是你使用Sugar ORM Custom Query Builder,可以使用这个来调用

Book.executeQuery("VACUUM");

或者您也可以使用方法findWithQuery,语法如下

List<Note> notes = Note.findWithQuery(Note.class, "SELECT * FROM Book 
                                        ORDER BY author DESC", null);