エンティティNotificationTypeに関連するエンティティNotificationsに関連するエンティティPerson(p)があります。
- タイプ1の通知を受け取った人もいます(notification_type_id = 1)。
- 一部は通知を受信しましたが、タイプ1ではありません
- メッセージをまったく受信していないものもあります。
グローバルに、タイプ1のメッセージを受信していない人を検索したいと思います。
私はこのクエリを書きました:
$qb = $this->createQueryBuilder('p')
->leftJoin('p.notifications', 'n')
->leftJoin('p.notification_type', 'nt')
->addSelect(array('p','n','nt'))
->where('nt.id NOT IN (1)')
->orderBy('p.name', 'ASC');
return $qb->getQuery()->getResult();
しかし、このクエリでは、通知を受け取ったがタイプ1は受け取っていない人だけを取得し、通知をまったく受信していない人は取得しません。
クエリを修正してそれらを含めるにはどうすればよいですか?
あなたの助けをどうもありがとう