doctrine クエリの WHERE 句の IN パラメータとして使用したいステータス オブジェクトの ArrayCollection があります。ここに私のクエリコードがあります:
$query = $repository->createQueryBuilder('r')
->join('r.applicationStatus', 's')
->where('r.submitted IS NOT NULL')
->andWhere('r.created >= :date')
->andWhere('r.created < :date2')
->andWhere('s IN (:status)') // Here's the In statement
->orderBy('r.created', 'DESC')
->setParameter('date', $appSearch->getDateFrom())
->setParameter('date2', $end)
->setParameter('status', $appSearch->getApplicationStatus()) //Here's the array collection
->getQuery();
ただし、クエリはゼロレコードを返しています。それが機能するには、 $appSearch->getApplicationStatus() arraycollection を手動で反復処理し、クエリの新しい配列でステータス ID を取得して、現時点で正しい結果を生成する必要があります。これは非常に非効率的です。
私は何を間違っていますか?