doctrine / symfony2中有多个addOrderBy

时间:2014-08-16 23:50:35

标签: php symfony doctrine-orm

我想根据首先具有最高优先级的商店优先级,然后是喜欢的数量和创建的日期来订购我在数据库中的商品图片:

所以我有以下内容:

 $picturesQuery = $qb->select('DISTINCT p')
                    ->from("AppMainBundle:Picture", 'p')
                    ->innerJoin('p.shop', 'shop')
                    ->addOrderBy('shop.priority', 'DESC')
                    ->addOrderBy('p.numberoflikes', 'DESC')
                    ->addOrderBy('p.created', 'DESC')
                              ;

然而它并不起作用。我有一个优先级最高的商店,但该商店的商品并未显示在查询结果的顶部。有多个订单可以吗?我怎样才能实现我的目标?

1 个答案:

答案 0 :(得分:0)

你需要获取联接 shop这样的东西(未经测试)。

$picturesQuery = $qb->select('DISTINCT p', 'shop')

Reference