выберите запрос, где все ассоциации равны некоторому значению - PullRequest
0 голосов
/ 27 января 2020

У меня есть следующая схема: у продуктов есть supplyingItems, у suplyingtems есть главный атрибут, который может быть истинным или ложным

Я пытаюсь выбрать все продукты, где все suppplyingItems ложны (ни один не верен), и я с трудом заставляет его работать.

Может ли кто-нибудь указать мне правильное направление, либо в необработанном sql, либо в doctrine queryBuilder

Примерно так

    $qb = $this
        ->createQueryBuilder('p');

    $results = $qb
        ->select('p.id')
        ->leftJoin('p.supplyingItems', 's')
        ->where($qb->expr()->all($qb->expr()->eq('s.main', 'false')))
        ->getQuery()
        ->getResult();

Кроме того, я не хочу, чтобы товары не имели снабженческих элементов, поэтому я думаю, что я бы добавил, где (кол-во (ов)> 0)?

Большое спасибо!

...