如何在sqlite android中按行对行进行排序

时间:2019-01-24 07:00:56

标签: android sqlite android-room android-database android-jetpack

我正在使用Android应用程序,该应用程序使用Room ORM进行数据库访问。 我有一个table,其中有user_idusernameisManager。 我想从此table进行查询,并获取所有user_ids。我想要这样的结果:

isManager为真的所有行应排在第一位,并应按username的字母顺序进行排序。 其余所有行都应位于下面,并应按username的字母顺序进行排序。

我该怎么做。我知道如何一堆排序。

2 个答案:

答案 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();