Symfony2でDoctrineを使用すると、それぞれのアイテムとそのそれぞれの最新のタイムスタンプを回復する必要があります。 だから私はSQLで次のようになりますDQLを使用してクエリを実行したいと思います:Doctrine DQLとのサブクエリに参加
SELECT * from `item` i
LEFT JOIN `kit` k ON k.`id` = i.`kit_id`
LEFT JOIN
(SELECT e.`item_id`, MAX(e.`dateCreation`)
FROM `entete_rapport` e
GROUP BY e.`item_id`) latest ON latest.`item_id` = i.`id`
私はDQLと同じを持ってすることはできませんよ。
$subSelect->select('e AS ItemId, MAX(e.dateCreation) AS latest')
->from('CATUParkBundle:EnteteRapport', 'e')
->groupBy('e.item');
$qb->select('i')
->from('CATUParkBundle:Item', 'i')
->leftJoin('i.kit', 'k')
->leftJoin('CATUParkBundle:EnteteRapport f', sprintf('(%s)', $subSelect->getDQL()), 'latest', 'f.id = latest.ItemId');
私はこのクエリの作品を作ることができないです、私は本当にあなたたちが必要:私はこのようなもので、私はサブクエリらメイン1を分離する必要があると思います。 ありがとうございます、あなたは素晴らしいです!