程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Symfony 2:使用理论查询生成器在不相关的表上进行INNER JOIN大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决Symfony 2:使用理论查询生成器在不相关的表上进行INNER JOIN?

开发过程中遇到Symfony 2:使用理论查询生成器在不相关的表上进行INNER JOIN的问题如何解决?下面主要结合日常开发的经验,给出你关于Symfony 2:使用理论查询生成器在不相关的表上进行INNER JOIN的解决方法建议,希望对你解决Symfony 2:使用理论查询生成器在不相关的表上进行INNER JOIN有所启发或帮助;

今天,我正在从事类似的工作,并记得我打开了这个问题。我不知道它从哪个版本开始起作用,但是现在您可以轻松地将子类加入继承映射中。因此,这样的查询可以正常工作:

$query = $this->createqueryBuilder('c')
        ->SELEct('c')
        ->leftJoin('MyBundlename:ChildOne', 'co', 'WITH', 'co.ID = c.ID')
        ->leftJoin('MyBundlename:ChildTwo', 'ct', 'WITH', 'ct.ID = c.ID')
        ->orderBy('c.createdAt', 'DESC')
        ->where('co.group = :group OR ct.group = :group')
        ->setParameter('group', $group)
        ->setMaxResults(20);

我在使用继承映射的父类中启动查询。在我以前的文章中,这是一个不同的起点,但如果我没记错的话,这是一个相同的问题。

因为当我开始这个问题时这是一个大问题,所以我认为对于其他不了解它的人来说也可能很有趣。

解决方法

我正在尝试使用学说查询构建器构建一个查询,该构建器将这样一个不相关的表加入其中:

$query = $this->createQueryBuilder('gpr')
        ->SELEct('gpr,p')
        ->innerJoin('TPost','p')
        ->where('gPR.contentId = p.contentId')

但这是行不通的。我仍然收到错误消息

我搜索了此错误消息,每个人都回答使用表别名+属性,例如p.someAttribute。但是我要联接的表与我从中选择的表无关。

作为普通的mysql查询,我会这样写:

SELECT * FROM t_group_publication_rel gpr 
INNER JOIN t_post p 
WHERE gPR.content_id = p.content_id

任何想法我在做什么错?

大佬总结

以上是大佬教程为你收集整理的Symfony 2:使用理论查询生成器在不相关的表上进行INNER JOIN全部内容,希望文章能够帮你解决Symfony 2:使用理论查询生成器在不相关的表上进行INNER JOIN所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。