我有 2 个表 A 和 B。
表 A 包含姓名,表 B 包含选定的姓名。
现在我想使用 greendao 对这些表执行以下查询,请告诉我是否可行,如果不可行,是否有任何替代方案(可能是原始查询)。
select *
from A inner join B
on A.nameid = B.nameid
此外,表 A 列:id、nameid、name
和表 B 列:id、nameid、name、rating
最佳答案
我认为这可能有所帮助。 您可以将原始查询用作假连接。你在查询对象中得到你想要的一切
Query query = ATableDao.queryBuilder().where(
new StringCondition("nameid IN " +
"(SELECT nameid FROM B_Table )").build();
因为“nameid”在您的示例中似乎不是唯一标识符。我不建议使用 Relations 来解决这个问题。如果您尝试使用 Relations ,你可以找到我之前的答案here.
关于android - 如何使用 Greendao 执行以下查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21579259/