我有 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 query = ATableDao.queryBuilder().where(
new StringCondition("nameid IN " +
"(SELECT nameid FROM B_Table )").build();

由于“nameid”似乎不是您样本中的唯一标识符。我不会建议使用关系来解决这个问题。如果您尝试使用 Relations ,您可以找到我之前的答案 here.

关于android - 如何使用 Greendao 执行以下查询?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21579259/

10-09 07:56