Chcę pobrać wszystkie podkategorie, z kategorii gdzie mają produkty i ilość tych produktów jest większa od zera.
Próbuję to zrobić takimi zapytaniami:
$query = $this->createQueryBuilder('c') ->select('c') ->join('AppBundle:Product','p','p.category = c') ->where("c IN (:categories) AND p.amount > 0") ->setParameter('categories',$categories) ->getQuery(); RETURN $query->getResult();
Gdzie zmienna $categories to podkategorie wyciagnięte metodą getChildren();
Niestety pobiera mi wszystkie podkategorie a nie tylko te które są połączone z produktami.
Bo kiedy dana kategoria nie ma produktu powinno mi tej kategorii nie wyświetlać.
Myslałem że zwykły Join załatwi sprawę.
Chcę też pobrać produkty tylko dla podkategorii danej kategorii, ale takie zapytanie też nie działa prawidłowo, pobiera mi wtedy wszystkie produkty:
$this->createQueryBuilder('p') ->select('p') ->join('AppBundle:Category','c','p.category = c') ->where('c.parent = :category AND p.amount > 0) ->getQuery();
Proszę Was o pomoc przy tych zapytaniach.