Symfony Doctrine2 QueryBuilder:如何筛选出一个OneToMany中计数为零的实体

Symfony Doctrine2 QueryBuilder:如何筛选出一个OneToMany中计数为零的实体,symfony,doctrine-orm,associations,one-to-many,query-builder,Symfony,Doctrine Orm,Associations,One To Many,Query Builder,在我的Dymfony2/Doctrine2应用程序中,对象及其子对象之间有一个单域关系 我想选择所有没有子对象的对象 我被各种错误所困扰:SingleValuedAssociationField应为,不能在非结果变量上添加sth,等等 我如何解决这个问题?有一个名为SIZE()的选择器,它应该可以解决这个问题。更多阅读 试着这样做: $this ->createQueryBuilder('object') ->leftJoin('object.children', '

在我的Dymfony2/Doctrine2应用程序中,对象及其子对象之间有一个单域关系

我想选择所有没有子对象的对象

我被各种错误所困扰:SingleValuedAssociationField应为,不能在非结果变量上添加sth,等等


我如何解决这个问题?

有一个名为
SIZE()
的选择器,它应该可以解决这个问题。更多阅读

试着这样做:

$this
    ->createQueryBuilder('object')
    ->leftJoin('object.children', 'children')
    ->where('SIZE(object.children) = 0')
    ->getQuery()
    ->getResult();

美好的这完全是我想要的!谢谢
$this
    ->createQueryBuilder('object')
    ->leftJoin('object.children', 'children')
    ->where('SIZE(object.children) = 0')
    ->getQuery()
    ->getResult();