は、私がモデルを持って考えてみましょう。 しかし、すべての人に会社があるわけではありません。GreenDAO左
は、私は新しいSQLクエリのperson.getCompany()
結果のすべての呼び出しは、私が追加することを考えていたことを避けるために参加:
QueryBuilder<Person> queryBuilder = session.getPersonDao().queryBuilder();
queryBuilder.join(PersonDao.Properties.CompanyId, Company.class);
queryBuilder.list()
問題が発生したので、私は唯一の企業と個人を得るということですクエリは、INNER JOINと同等のJOINを使用します。会社のない人にもLEFT JOINが必要だと思います。
GreenDAOはLEFT JOINをサポートしていないようです。生のクエリを実行せずにリクエストを行う別の方法はありますか?
別のORMを使用している場合は、JDXA ORM(http://softwaretree.com/v1/products/jdxa/jdxa.html)を提案できます。 JDXAは、修飾されたPersonオブジェクトと関連するすべてのCompanyオブジェクトを取得します。関連するCompanyオブジェクトが存在しない場合、Personオブジェクトは引き続きフェッチされます。 –