Android ORMLite.左加入.WHERE子句

Rob*_*kus 4 android ormlite

QueryBuilder<Answer, Integer> queryBuilder = helper.getAnswerDao().queryBuilder();
QueryBuilder<Question, Integer> questionQueryBuilder = helper.getQuestionDao().queryBuilder();

questionQueryBuilder.where().eq(Question.TYPE_COLUMN_NAME, "table");            
queryBuilder.leftJoin(questionQueryBuilder);

queryBuilder.where().eq(Answer.PICKED_COLUMN_NAME, true);

pickedAnswers = queryBuilder.query();
Run Code Online (Sandbox Code Playgroud)

生成的SQL语句:

SELECT `Answers`.* 
FROM `Answers`
    LEFT JOIN `Questions` ON `Answers`.`questionId` = `Questions`.`id`
WHERE `Answers`.`picked` = 1
    AND (`Questions`.`type` = 'table' )
Run Code Online (Sandbox Code Playgroud)

由于"AND"逻辑运算,此查询返回空结果集.这是ORMLite的默认行为.是否有可能改变"OR"操作与子句结合的地方?

我试过:所有方法queryBuilder.where().or()之前queryBuilder.where().eq(Answer.PICKED_COLUMN_NAME, true)queryBuilder.where().or(2)之后where().

Rob*_*kus 5

有一种leftJoinOr方法可以完全满足我的需要.它使用OR逻辑运算构建where子句.