【发布时间】:2018-06-05 12:55:38
【问题描述】:
这是在 symfony 中。 如何在另一个环境中更好地完成这项工作不知道为什么 河。是与 RecruitmentUsers 有一对一关系的 Recruitment Entity
$this->createQueryBuilder('r')
->select('r')
->addSelect('(SELECT SUM(b.payedAmount) FROM APP\Entity\RecruitmentUsers b WHERE b.isActive = 1 and r.id = b.recruitment) as payedSum')
->addSelect('(SELECT SUM(c.declaredAmount) FROM APP\Entity\RecruitmentUsers c WHERE c.isActive = 1 and r.id = c.recruitment) as declaredSum')
->leftJoin('r.recruitmentUsers','u')
->groupBy('r.id')
->orderBy('r.id', 'DESC')
->getQuery()
->getResult()
在开发环境中一切正常,我得到了这个错误:
Fatal error: Uncaught Doctrine\ORM\Query\QueryException: SELECT r, (SELECT SUM(b.payedAmount) FROM APP\Entity\RecruitmentUsers b WHERE b.isActive = 1 and r.id = b.recruitment) as payedSum, (SELECT SUM(c.declaredAmount) FROM APP\Entity\RecruitmentUsers c WHERE c.isActive = 1 and r.id = c.recruitment) as declaredSum FROM App\Entity\Recruitment r LEFT JOIN r.recruitmentUsers u GROUP BY r.id ORDER BY r.id DESC in /usr/home/eliteinvestments/domains/4eliteinvestments.pl/vendor/doctrine/orm/lib/Doctrine/ORM/Query/QueryException.php:43 Stack trace: #0 /usr/home/eliteinvestments/domains/4eliteinvestments.pl/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(487): Doctrine\ORM\Query\QueryException::dqlError('SELECT r, (SELE...') #1 /usr/home/eliteinvestments/domains/4eliteinvestments.pl/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(987): Doctrine\ORM\Query\Parser->semanticalError('line 0, col 42 ...', Array) #2 /usr/home/eliteinvestments/domains/4eliteinvestments.pl/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php(1 in /usr/home/eliteinvestments/domains/4eliteinvestments.pl/templates/bundles/TwigBundle/Exception/error.html.twig on line 6
我完成了缓存:清除,缓存:预热,学说:缓存:清除查询,学说:缓存:清除结果,学说:缓存:清除元数据 它都不起作用。 有什么提示吗?
【问题讨论】: