2014-10-22 5 views
-1

Может кто-нибудь мне помочь? я получил, что SQL запрос и нужно представить, что в JPQL, но я столкнулся проблемы с правом присоединиться:JPQL multiple JOIN query

SELECT alrt.* 
FROM 
REACTION.ALERT alrt, REACTION.INVESTIGATION inv, 
REACTION.CLASSIFICATION_TYPE clst, REACTION.FRAUD_TYPE frt, 
REACTION.TRANS trns, REACTION.CARD crd 
WHERE 
    alrt.ISS_INST IN(1201, 1101) AND 
    alrt.MODULE_TYPE = 0 AND 
    0 < (SELECT COUNT(*) FROM REACTION.INVESTIGATION WHERE REACTION.INVESTIGATION.ALERT_ID = alrt.ID) AND 
    inv.CLASSIFICATION_TYPE_ID IS NOT NULL AND 
    clst.CLASSIFICATION_TYPE = 10 AND 
    (alrt.REMINDER_USER_LOGIN = 'qwr' OR alrt.REMINDER_USER_LOGIN IS NULL) AND 
    alrt.ID = inv.ALERT_ID AND 
    alrt.TRANSACTION_ID = trns.ID(+) AND inv.CLASSIFICATION_TYPE_ID = 
    clst.ID AND inv.FRAUD_TYPE_ID = frt.ID(+) AND trns.HPAN = crd.HPAN(+); 

После чтения учебников и документов я создать этот JPQL запрос:

SELECT alrt 
    FROM INVESTIGATION inv 
     JOIN inv.CLASSIFICATION_TYPE_ID clst 
     RIGHT JOIN inv.FRAUD_TYPE_ID frt 
     JOIN inv.alert_id alrt 
     RIGHT JOIN alrt.transactio_id trns 
     RIGHT JOIN trns.HPAN crd 
    WHERE 
     alrt.ISS_INST IN(1201, 1101) AND 
     alrt.MODULE_TYPE = 0 AND 0 < (SELECT COUNT(inv1) FROM INVESTIGATION inv1 WHERE inv1.ALERT_ID = alrt.ID) AND 
     inv.CLASSIFICATION_TYPE_ID IS NOT NULL AND 
     clst.CLASSIFICATION_TYPE = 2 AND 
     (alrt.REMINDER_USER_LOGIN = 'qwr' OR alrt.REMINDER_USER_LOGIN IS NULL); 

Но я получил затем попытайтесь выполнить это. Может ли кто-нибудь сказать, что я сделал неправильно? Если это имеет смысл, я использую JPA 1.0 version

+2

Можете ли вы отправить сообщение об ошибке? – jmvivo

+0

ok, я добавлю текст ошибки в течение часа, извините – MeetJoeBlack

ответ

0

Ваша ошибка связана с идентификатором, но не объектом OR-mapping. Попробуйте это:

JOIN inv.CLASSIFICATIONTYPE(your mapping property name) clst 

Если и не имеют отображение отношения между объектами, u'd лучше пользователя присоединиться таблицы i.o. ИЛИ-отображение. Дополнительная информация о JPQL