2013-08-28 3 views
0

나는 두 개의 테이블에 가입하고 싶지만 오류가 있습니다. 나는이 syntaxe 사용 :jpa createquery에서 두 테이블을 조인하는 방법?

Query qrec2=em.createQuery("Select o from OfPlanifie o Operateur w where o.idOpe =: w.idOpe"); 

을하지만 난이 오류가있어 :

Caused by: Exception [EclipseLink-8025] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.JPQLException 
Exception Description: Syntax error parsing the query [Select o from OfPlanifie o Operateur w where o.idOpe =: w.idOpe], line 1, column 27: unexpected token [Operateur]. 
Internal Exception: NoViableAltException([email protected][()* loopback of 477:9: (node= join)*]) 

은 내가 어떻게 그 두 테이블을 조인 할 수 있습니다? 당신이 OfPlanifie에서 모든 열을 선택하려면

+0

['와 JPA 문제 태그를 중지하십시오 jsf]'. – BalusC

답변

0

당신은 OfPlanifie o, Operateur w

또한 당신의 두 테이블 사이에 쉼표 누락, 당신은 대신 SELECT o.*을 할 필요가 SELECT o

+0

이 쿼리를 사용했습니다. 쿼리 qrec2 = em.createQuery ("OfPlanifie o, Operateur w에서 w.matricule = : '5024'")를 선택했지만, 내 requete의 문제는 어디에 있습니까? – marouanoviche

+1

두 테이블을 조인하고 있지만 서로 관련이 없습니다. 마지막에'AND o.idOpe = : w.idOpe'가 있어야합니다. (이 테이블과 관련된 ID라고 추측합니다) –

+0

이전 시도가 작동하지 않으면 좀 더 추가 할 수 있습니다 당신이 성취하고자하는 것에 대한 컨텍스트, 주로 당신이 선택하려고하는 것과 테이블이 서로 어떻게 관련되어 있는지를 나타냅니다. –

관련 문제