我有一个实体命名的内容。 这是我所有的其他内容相关的实体我的抽象基类。
/**
* MyBundle\Entity\Content
*
* @ORM\Entity(repositoryClass="MyBundle\Repository\ContentRepository")
* @ORM\InheritanceType("JOINED")
* @ORM\DiscriminatorColumn(name="discr", type="string")
* @ORM\Table(name="MyBundle_content")
* @ORM\HasLifecycleCallbacks
*/
abstract class Content
内容属性:
- ID
- 更新
- ....
而且我有很多不同的实体,所有的扩展内容。
在我的仓库( 那不是内容,而不是扩大内容的另一个实体 )我有一个相当复杂的查询,我想选择所有内容对象的“更新”字段(取决于其他一些unrelevant的东西)
编辑:但内容实体接合在与另一实体-在该查询“> leftJoin(‘p.content’,‘C’)”。 我的意思是,我在一个完全不同的实体,它只是有一个关于内容的存储库,这就是为什么我加入到内容有与“ - > leftJoin(” p.content”,‘C’ )”(其中p为实体,该库目前我在我。
问题是,在该查询学说所加入到内容表扩展内容的每一个实体。 因为我有相当多的实体,我得到的错误是
General error: 1116 Too many tables; MySQL can only use 61 tables in a join
在我来说,我并不需要所有这些连接的表,因为我需要的信息是在内容表孤单。
有什么办法同时仍使用QueryBuilder的,而不是写我自己的SQL查询仅根实体表?