【发布时间】:2018-04-20 13:13:35
【问题描述】:
我有一个包含以下说明的存储库函数:
$QB = $this->_em->createQueryBuilder();
$QB ->addSelect("CONCAT(dsub2.dagId, MAX(tsub2.executionDate))")
->from(TaskInstance::class, 'tsub2')
->join('tsub2.dag', 'dsub2')
->addGroupBy('dsub2.dagId')
;
调用 $QB->getQuery()->getSQL(); 或 $QB->getQuery()->getResult() 会引发错误提示:
预期的 StateFieldPathExpression |字符串 |输入参数 |函数返回字符串 | AggregateExpression,得到 'MAX'
用以下 sn-p 完全替换 addSelect 调用也不起作用,并引发相同的错误:
->addSelect(
$QB->expr()->concat(
'dsub2.dagId'
, $QB->expr()->max('tsub2.executionDate')
)
)
您知道将MAX 函数调用嵌套为CONCAT 参数的正确方法(或解决方法)吗?
Doctrine DBAL v2.6.3 ;教义 ORM v2.6.1
【问题讨论】:
标签: doctrine-orm dql doctrine-query