所以我有两个表City和Street我写了一个查询返回City及其街道的一个查询响应看起来像这样
1 City1
1 Street1
2 Street2
3 Street3
我有这个回复的POJO类:
data class CityResponse(var city: City, var streets: List<Street>)
但是我无法编译,因为它会抛出错误:
error: Cannot figure out how to read this field from cursor private java.util.List<Street> streets
如何编写此响应数据类,房间会理解变量streets: List<Street>
答案 0 :(得分:0)
在这种情况下,使用连接查询并创建一个提供两个细节的公共pojo类。然后进行如下查询..
@Query("SELECT * FROM Student s LEFT JOIN BookIssue b ON s.StudentId =b.StudentId")
List<JoinData> getJoinData();
你也可以实现内连接和其他连接,但是制作一个可以同时提供两个表记录的pojo。
还有一种方法可以首先找到城市并进行循环,并根据城市名称找到街道并获取街道数据。