回答

收藏

如何在DQL中选择具有MAX(列值)的行?

技术问答 技术问答 247 人阅读 | 0 人回复 | 2023-09-12

我无法在我拥有的symfony在项目中获得此查询。4 a- e# J: g$ j
我的表:: Q; f0 g& I# H
id  course  datetime    numOrden   ---|-----|------------|--------1  | 1潞  | 04/11/2016 | 1   2  | 2潞  | 04/11/2016 | 25  | 3潞  | 04/11/2016 | 5  3  | 4潞  | 03/11/2016 | 4   4  | 5潞  | 03/11/2016 | 3numOrden列中值最大的课程(在这种情况下,这将是第三课程)。为此,我在Doctrine使用以下查询:
. w* x& A  V+ e0 i" X+ n8 mpublic function findCourse(){     return $this->getEntityManager()->createQuery(   SELECT c FROM BackendBundle:Curso c WHERE c.numOrden in (SELECT max(c.numOrden) FROM BackendBundle:Curso )    ->getResult();}或者- U9 q- ^7 x% Y( w  |, H2 _5 u
                public function findCourse(){     return $this->getEntityManager()->createQuery(   SELECT c FROM Bundle:Course c WHERE c.numOrden=(SELECT max(c.numOrden) FROM Bundle:Course )    ->getResult();}但它显示了以下错误:, u3 H1 A; A2 u/ N( X
[Syntax Error] line 0,col -1: Error: Expected Doctrine\ORM\Query\Lexer::T_CLOSE_PARENTHESIS,got end of string. (500 Internal Server Error)               
+ }6 }3 @8 T4 I3 Q9 ?    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则