Как отсортировать строки в связках в sqlite android - PullRequest
0 голосов
/ 24 января 2019

Я работаю над приложением для Android, которое использует Room ORM для доступа к БД. У меня есть table, который имеет user_id, username и isManager. Я хочу запросить от этого table и получить все user_ids. Я хочу результат как:

Все строки, в которых isManager имеет значение true, должны стоять на первом месте и должны быть отсортированы в алфавитном порядке по username. Все остальные строки должны располагаться ниже и должны быть отсортированы в алфавитном порядке по username.

Как мне это сделать. Я умею сортировать в одну связку.

Ответы [ 2 ]

0 голосов
/ 26 января 2019

Вы можете отсортировать столбец isManager в порядке desc, чтобы все true отображались первыми, а столбец username - в порядке asc, чтобы данные сортировались в алфавитном порядке одновременно.

@Query("SELECT * FROM " + TABLE_NAME + " ORDER BY " + isManager +" DESC, " + username + " ASC”)
List<UserTable> getAllUsers();
0 голосов
/ 24 января 2019

Вы можете использовать запрос как этот.

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