0

我有两张表产品和评论,

我正在寻找使用 DQL / 使用 symfony 进行查询。

通常我可以做这样的事情:

// Get number of comment not visited per product
Select count (p.id) from Product p, Comment c where P.id = c.p_id and c.status = 0;

// Get number of comment read visited per product
Select count (p.id) from Product p, Comment c where P.id = c.p_id and c.status = 1;

但是,当我使用分页包时,我只需要在参数中传递一个查询(就像我也在使用过滤器包一样,也只需要一个查询,这样他就可以对其应用过滤器)。

任何想法!!

4

1 回答 1

0

这是解决方案:https ://stackoverflow.com/a/14294335/875519

适应您的情况,这应该可以解决问题:

$this->getEntityManager()->createQuery('
    SELECT COUNT(p1) AS p1, COUNT(p2) AS p2
    FROM YourBundle:Product p1, YourBundle:Product p2, YourBundle:Comment c1, YourBundle:Comment c2
    WHERE p1.id = c1.p_id AND c1.status = 0
    AND p2.id = c2.p_id AND c2.status = 1
');
于 2013-08-09T20:13:12.330 回答