0

これは私が欲しいクエリです:

SELECT * FROM (SELECT * FROM counter ORDER BY id DESC) AS x GROUP BY campaign_id

しかし、Symfony アプリケーションでこれを表現する方法が見つかりません。Doctrine でこのようなサブクエリを使用する正しい方法は何ですか?

これです:

$query = $em->createQuery('SELECT c
        FROM InstacountInstacountBundle:Counter c
        GROUP BY c.campaign');  
    $counts = $query->getResult();

正常に動作していますが、グループ内の最新のレコードのみが必要です。助けてくれてありがとう!

4

1 に答える 1

0
SELECT x.* 
  FROM counter x
  JOIN 
     ( SELECT campaign_id, MAX(id) max_id FROM counter GROUP BY campaign_id ) y
    ON y.campaign_id = x.campaign_id
   AND y.max_id = x.id;
于 2013-09-19T12:47:14.467 に答える