原则更新使用联接错误



我需要运行这个sql。

$this->getRepository('AppBundle:Order')
->createQueryBuilder('o')
->update()
->join('o.dis', 'd')
->set('o.channel.type', 'CASE WHEN d.hasVod = 1 THEN :vod ELSE :other END')
->setParameter('vod', 'vod')
->setParameter('other', 'other)
->getQuery()
->execute()
;

$this->getRepository('AppBundle:Order')
->createQueryBuilder('o')
->update()
->join('o.dis', 'd')
->set('o.channel.type', 'vod')
->where('d.hasVod = 1')
->getQuery()
->execute()
;

但错误:"d"未定义。 我尝试在教义中运行sql也有这个错误。

所以如果你有好主意,请告诉我,谢谢!!

您需要在连接指令中定义表 d。 查询的开头为:

$this->getRepository('AppBundle:Order')
->createQueryBuilder('o')
->join('YourBundle:YourEntity', 'd','WITH', 'd.id = o.dis' )
/* ...... */

相关内容

  • 没有找到相关文章

最新更新