2

私はこのようなことをしたいと思います:

    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' 属性がありません」という実行時エラーが発生しました。

4

1 に答える 1

3

ええ、そのような where ステートメントを組み合わせることはできません。次のことを行う必要があります。

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

ORMLiteAND、2 つの異なるWHEREステートメントを実行してまとめる必要があります。

于 2013-01-18T17:42:26.207 に答える