我正在使用Android应用程序,该应用程序使用Room ORM
进行数据库访问。
我有一个table
,其中有user_id
,username
和isManager
。
我想从此table
进行查询,并获取所有user_ids
。我想要这样的结果:
isManager
为真的所有行应排在第一位,并应按username
的字母顺序进行排序。
其余所有行都应位于下面,并应按username
的字母顺序进行排序。
我该怎么做。我知道如何一堆排序。
答案 0 :(得分:1)
您可以使用这样的查询。
@Query("SELECT * FROM " + TABLE_NAME + " ORDER BY " +COLUMN_1 +" DESC,
"+COLUMN_2+" ASC”)
List<DataTable> getAllData();
答案 1 :(得分:0)
您可以按isManager
的顺序对desc
列进行排序,以便所有true
都首先出现,并按username
的顺序对asc
列进行排序,以便将数据同时按字母顺序排序。
@Query("SELECT * FROM " + TABLE_NAME + " ORDER BY " + isManager +" DESC, " + username + " ASC”)
List<UserTable> getAllUsers();