doctrine DQL orderBy with Max value

时间:2015-09-06 23:32:03

标签: doctrine-orm dql

我有一个带有parent_id字段和序列字段(整数)的实体。

我想按Parent_id字段排序,并选择仅包含Max序列的行。

1 个答案:

答案 0 :(得分:0)

使用查询构建器和子选择尝试此方法。

在您的entityRepository类中使用此方法:

public function getQueryBuilderForMaxSequenceValue()
    {
        $sub = $this->createQueryBuilder('a2');
        $sub->select("max(a2.sequence)");

        $qb = $this->createQueryBuilder('u');
        $qb->where('u.sequence= ( '.$sub->getDQL().' )');
        $qb->orderBy('u.parent_id','DESC');


        return $qb;
    }

希望这个帮助