나는 두 개의 개체 인 Restaurant and Cuisine을 보유하고 있으며 Restaurant에는 Funnily라고 불리는 요리와 다 대다 관계가 있습니다. 나는 두 개의 레스토랑 (rest1, rest2)와 두 개의 요리 (인도, 중국어)를 가지고있는 경우Doctrine many to many 속성을 반환 값으로 사용
그래서 두 레스토랑은 인도가
rest1 indian
rest2 indian
내가 쿼리 빌더를 통해하는 DQL 쿼리를 수행하고 싶습니다 , 그것은 얼마나 많은 식당이 요리에 할당되었는지에 대한 계산과 함께 요리 목록을 반환합니다. 이론적으로 이와 같은 것입니다.
$qb->select('rc AS cuisine, COUNT(r) AS restaurantCount')
->from('Restaurant', 'r')
->join('r.cuisines', 'rc')
->addGroupBy('rc');
그래서, 그 결과로, 나는 주요 개체가 반환 될 필요로이 오류를 줄 것이라는 점을 알고있다
cuisine: indian restaurantCount: 2
을하고 싶습니다.
many-to-many의 역함수를 만들고 사용하여이 작업을 수행 할 수 있음을 알고 있지만 양방향 관계의 복잡성을 피하기 위해 요리사에게 레스토랑 속성을주는 것을 피하려고합니다.
레스토랑을 기본 선택 테이블로 사용하여 원하는 결과를 얻을 수 있습니까?