Hôm nay tôi đang làm việc với nhiệm vụ tương tự và nhớ rằng tôi đã mở vấn đề này. Tôi không biết nó hoạt động từ phiên bản học thuyết nào nhưng ngay bây giờ bạn có thể dễ dàng tham gia các lớp con trong ánh xạ kế thừa. Vì vậy, một truy vấn như thế này đang hoạt động mà không gặp bất kỳ sự cố nào:
$query = $this->createQueryBuilder('c')
->select('c')
->leftJoin('MyBundleName:ChildOne', 'co', 'WITH', 'co.id = c.id')
->leftJoin('MyBundleName:ChildTwo', 'ct', 'WITH', 'ct.id = c.id')
->orderBy('c.createdAt', 'DESC')
->where('co.group = :group OR ct.group = :group')
->setParameter('group', $group)
->setMaxResults(20);
Tôi bắt đầu truy vấn trong lớp cha của mình đang sử dụng ánh xạ kế thừa. Trong bài viết trước của tôi, đó là một điểm khởi đầu khác nhưng cùng một vấn đề nếu tôi nhớ đúng.
Bởi vì đó là một vấn đề lớn khi tôi bắt đầu vấn đề này, tôi nghĩ nó cũng có thể thú vị đối với những người khác không biết về nó.