Doctrine 2에 문제가 있고 maytomany 관계에서 왼쪽 결합이 작동하려고합니다. 그것은 아마도 내 쿼리 빌더지만, 나는 그것을 알아낼 수 없습니다. 사용자가 관계의 소유자 인 두 가지 모델, 사용자 및 관광 명소, 들어Doctrine 2 leftJoin, manytomany 관계, 잘못된 행 수 반환
----------------------------------
| user_id | attraction_id |
----------------------------------
| 4 1 |
| 4 2 |
| 4 3 |
----------------------------------
:
나는 조인 테이블과 같이 있습니다.
내가이 쿼리를 수행 할 때 :
$attractions = $CI->em->createQueryBuilder()
->select('a', 'u')
->from('\ListLovers\Model\Attraction', 'a')
->leftJoin('a.users', 'u', \Doctrine\ORM\Query\Expr\Join::WITH, 'u.id = 4')
->getQuery()->getResult();
내 사용자가 하나의 ID와 매력에 대한 계산은 1 대입니다!
지금 내가 그렇게 같은 조인 테이블에 다른 행을 추가하는 경우 :
----------------------------------
| user_id | attraction_id |
----------------------------------
| 1 1 |
| 4 1 |
| 4 2 |
| 4 3 |
----------------------------------
을 ... 같은 쿼리를 수행, 내 사용자는 하나의 ID입니다 ... ZERO와 매력에 대한 계산합니다. 뭐야?
나는 뭔가를 놓친가요?
감사합니다. 마크.
다른 테이블 (사용자 지정 식별자 사용)에 대한 필드를 사용해야하며 필터는 SQL 쿼리의 "where"섹션에 있어야합니다. – ZhukV