2013-12-09 3 views
-1

상점 용 쇼핑 카트 웹 응용 프로그램을 만들었습니다. 고객이 시스템에 로그인하면 장바구니에 품목을 추가하고 있습니다. 필자의 경우, 모든 카트 항목을 ShoppingCart라는 테이블에 저장합니다. 나는 Customer와 ShoppingCart라는 2 개의 테이블을 가지고있다. ShoppingCart 기본 키는 userName입니다. userName은 Customer 테이블의 속성입니다. 모든 ShoppingCart 항목을 가져와야합니다. 여기서 userName.JPQL에서 where 절을 사용하는 방법?

SELECT o FROM ShoppingCart o, Customer c WHERE c.userName = :id 

id는 ShoppingCart의 기본 키입니다. 이 쿼리에서 올바른 결과를 얻지 못했습니다. 내가 어떻게 해?

미리 감사드립니다.

답변

0

아래의 쿼리를 사용해보십시오. 쿼리에서 주어진 ID에 대한 정확한 결과를 가져 오기 위해 어떤 열을 추가해야 하는지를 추가하지 않았습니다.

SELECT o FROM ShoppingCart o, Customer c WHERE c.userName = o.userName AND o.userName = :id 

또한 각 고객이 하나 이상의 주문 항목을 가질 수 있으므로 일대 다 관계를 추가 할 수 있습니다.

SELECT c FROM Customer c JOIN c.orders o WHERE c.userName = :id 

여기에서 orders은 특정 고객을위한 주문 모음입니다. 그러면 Customer에서 주문을받을 수 있습니다.

관련 문제