我有2个实体(人,租约)。我希望获得person_id
等于Lease_personId
的所有人和租赁属性。
使用原始查询
SELECT *
FROM Person
INNER JOIN lease ON person._id = lease.person_id
在数据库上,一切正常。
但是使用greenDAO queryBuilder:
QueryBuilder<Person> queryBuilder = personDao.queryBuilder();
queryBuilder.join(Lease.class, LeaseDao.Properties.PersonId);
List <Person> persons = queryBuilder.list();
我一无所获。
答案 0 :(得分:3)
看起来你缺少where
条件。以下是我在文档代码中找到的内容
QueryBuilder<User> queryBuilder = userDao.queryBuilder();
queryBuilder.join(Address.class, AddressDao.Properties.userId)
.where(AddressDao.Properties.Street.eq("Sesame Street"));
List<User> users = queryBuilder.list();
更多访问greenDao Joins