【问题标题】:How to sort rows in bunches in sqlite android如何在sqlite android中对行进行排序
【发布时间】:2019-01-24 07:00:56
【问题描述】:

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

isManager 为真的所有行都应该排在最前面,并且应该按username 的字母顺序排序。 所有剩余的行都应该在下面,并且应该按username 的字母顺序排序。

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

【问题讨论】:

  • 不可以先按经理下单,再按用户名下单吗?那么数据库应该会给你正确的结果。
  • @oruckdeschel 你可能是对的。我也在考虑使用多个订单。

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


【解决方案1】:

您可以使用这样的查询。

@Query("SELECT * FROM " + TABLE_NAME + " ORDER BY " +COLUMN_1 +" DESC, 
"+COLUMN_2+" ASC”)
List<DataTable> getAllData();

【讨论】:

    【解决方案2】:

    您可以按desc 的顺序对isManager 列进行排序,以便所有true 首先出现,并按asc 的顺序对username 列进行排序,以便同时按字母顺序对数据进行排序。

    @Query("SELECT * FROM " + TABLE_NAME + " ORDER BY " + isManager +" DESC, " + username + " ASC”)
    List<UserTable> getAllUsers();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-14
      • 2013-07-15
      • 1970-01-01
      • 2017-12-23
      • 2020-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多