Java 在where条件下使用多个表的ormlite查询

Java 在where条件下使用多个表的ormlite查询,java,ormlite,Java,Ormlite,我想这样做: Select * from A join B where (A.a=x and B.b=y); 我试过: qbA = aDao.queryBuilder(); qbB = bDao.queryBuilder(); whereA = qbA.where(); whereB = qbB.where(); join = qbA.join(qbB); whereJ = join.where(); whereJ.and(whe

我想这样做:

    Select * from A join B where (A.a=x and B.b=y);
我试过:

    qbA = aDao.queryBuilder();
    qbB = bDao.queryBuilder();
    whereA = qbA.where();
    whereB = qbB.where();
    join = qbA.join(qbB);
    whereJ = join.where();
    whereJ.and(whereA.eq(A.a, x), whereB.eq(B.b, y));
它给了我编译错误。我还尝试仅在以下情况下使用连接:

    whereJ.and(whereJ.eq(A.a=x), whereJ.eq(B.b=y));  

我遇到运行时错误:“A没有'b'属性”。

是的,你不能这样组合where语句。您应该执行以下操作:

whereA = qbA.where();
whereA.eq(A.a, x);
whereB = qbB.where();
whereB.eq(B.b, y);
join = qbA.join(qbB);

应该注意执行
并将两个不同的
WHERE
语句放在一起。

如果我们想在组合WHERE语句时执行OR而不是AND,该怎么办?