我试着去在querydsl这个SQL查询相匹配
SELECT tr.* FROM test.TRIP_REQ tr left outer join test.ADDR_BOOK ab on tr.REQ_USERID=ab.USER_ID
我知道如何使LEFT JOIN查询,如果你加入到标识列,但斗争,使之与加入2点替代的列上工作。 tr.REQ_USERID和ab.USER_ID都没有标识列
这是我的querydsl:
QTripReq qTripReq = QTripReq.tripReq;
QAddressBook qABook = QAddressBook.addressBook;
JPAQuery query = new JPAQuery(entityManager);
query.from(qTripReq).leftJoin(qABook).on(qTripReq.requestorUser.id.eq(qABook.user.id)).list(qTripReq);
这将引发错误:
路径预期的加入! [从com.TripReq tripReq选择tripReq左加入ADDR_BOOK ADDRESSBOOK与tripReq.requestorUser.id = addressBook.user.id其中tripReq.assignedCompany.id =?1]