因此,我们正在使用房间库,它很容易使用,但是我们遇到一个问题,就像我们在使用联接查询时,房间正在更改对象的ID一样。
@Query("select * from puzzles inner join list_puzzle_join on puzzles.id=list_puzzle_join.puzzleId where list_puzzle_join.puzzleListId=:puzzleListId")
List<Puzzle> getAllPuzzlesFromPuzzleList(String puzzleListId);
例如,当我们遇到难题时,使用puzzlesDAO可以得到以下ID:
6c6a5f74-d5bb-45c5-922b-b95bf608854c ,
03e34887-0d7d-4b6f-85d4-0a38ce3c0da9 ,
a9ac3435-cd35-4f7c-8bd3-e91b5514ecd2 ,
当我们使用联接查询时,我们得到:
2ba31014-f105-4f15-be01-f167b9afef55 ,
a23a48de-7552-4b27-a49c-369c3949f45c ,
4b9034a2-4936-4741-9448-6c57855cee6a ,
是否有可能获得正确的设计?或者设计成这样?
答案 0 :(得分:1)
我认为您想做的是List<MessageItem> listResponse =response.body().getMessage();
String fname=listResponse.get(0).getEmpFirstName();
,而不是select puzzles.*
。您现在使用的查询可能有2个select *
字段,这可能是根本原因。