Какой тип возврата следует ожидать для SELECT DISTINCT для нескольких столбцов в комнате? - PullRequest
0 голосов
/ 13 апреля 2020

Я использую пространство для своего приложения и хочу запросить таблицу для каждой уникальной комбинации recordingId и markerId:

@Entity(tablename = "table")
data class Table(
  val recordingId: Int, 
  val markerId: Int,
...)

TableDao:

    @Query("SELECT DISTINCT markerId, recordingId FROM table GROUP BY recordingId")
    fun getRecordingWithMarkTyps(): LiveData<List<Pair<Int,Int>>>

Однако я не уверен, как Я должен сопоставить ожидаемый результат с результатами запроса.

1 Ответ

0 голосов
/ 13 апреля 2020

Как указывает Официальная Android документация , вы можете напрямую преобразовать результат в объект с правильной реализацией.

В вашем случае вы можете объявить его следующим образом:

data class Table(
  val recordingId: Int, 
  val markerId: Int,
...)

@Query("SELECT DISTINCT markerId, recordingId FROM table GROUP BY recordingId")
abstract fun getRecordingWithMarkTyps(): List<Table>
...