Doctrine - 从表中选择最后4行

时间:2013-10-26 13:27:45

标签: symfony doctrine-orm dql

我正在使用Symfony / Doctrine。 我正在尝试从表中选择最后4行,但我得到了错误。

$em = $this->getDoctrine()->getEntityManager();
$query = $em->createQuery(
'SELECT c FROM DprocMainBundle:Courses c ORDER BY id DESC LIMIT 4'
);

$course = $query->getResult();

这是我的查询,但显示错误。

  

字符串的预期结束,得到'LIMIT'

我应该如何使用限制,并获得最后4行?

谢谢!

1 个答案:

答案 0 :(得分:6)

使用setMaxResults()来限制结果数量。

$course = $query->setMaxResults(4)->getResult();

如果您想将其用于分页,可以添加setFirstResult()来电。

 $course = $query->setMaxResults(4)->setFirstResult(10)->getResult();