Php 理论案例
我正在用Symfony 3.4和dcontrine构建一个应用程序 以下SQL语句在我的数据库中运行良好:Php 理论案例,php,symfony,doctrine,symfony-3.4,doctrine-query,Php,Symfony,Doctrine,Symfony 3.4,Doctrine Query,我正在用Symfony 3.4和dcontrine构建一个应用程序 以下SQL语句在我的数据库中运行良好: SELECT * FROM `report` INNER JOIN report_template ON `template_id` = report_template.id INNER JOIN game ON game.id = `game_id` WHERE (game.refereeAId='Hoehl Luca,SpVgg Altenerding' or game.refere
SELECT * FROM `report`
INNER JOIN report_template ON `template_id` = report_template.id INNER JOIN game ON game.id = `game_id`
WHERE (game.refereeAId='Hoehl Luca,SpVgg Altenerding' or game.refereeBId='Hoehl Luca,SpVgg Altenerding')
AND report.creator_id LIKE (CASE WHEN report.template_id=1 THEN 136 ELSE '%' END)
现在我想在条令中有这样的陈述:
$query = $repository->createQueryBuilder('r');
$query->innerjoin('r.game', 'g')
->innerjoin('r.template', 't')
->innerjoin('r.creator', 'c');
$query->andwhere('g.refereeAId = :refereeName or g.refereeBId = :refereeName')
->andWhere('r.approved = :approved')
->andWhere('c.id LIKE CASE WHEN r.template = :template THEN :user ELSE \'%\' END')
->setParameter('approved', true)
->setParameter('refereeName', $refereeID)
->setParameter('template', $templates[1])
->setParameter('user', $user->getId());
我收到以下错误消息:
Notice: Undefined property: Doctrine\ORM\Query\AST\GeneralCaseExpression::$type
我在类似的案例块中尝试了这么多组合,但没有任何效果。有人知道如何在条令中添加此块吗
致意
Andreas您必须在关闭时使用
,它位于条令\ORM\Query\AST\WhenClause
中
WhenClause::=“WHEN”ConditionalExpression“然后”ScalarExpression