Symfon isnull 子查询

Symfon isnull subquery

正在尝试检查子查询是否为空并获取结果。当我尝试调用 ISNULL 时出现错误

Expected =, <, <=, <>, >, >=, !=, got 'IS'

但是当我在数据库中调用 dql 时它可以正常工作,没有错误。

子查询如下:

$subQb = $repo->createQueryBuilder('i');
$subQb->select('i.id');
$subQb->andWhere($subQb->expr()->eq('i.id', $qb->getRootAliases()[0].'.id'));
$subQb->andWhere($subQb->expr()->isNull('i.value'));
$subQb->groupBy('i.id');

然后我尝试使用:

 $qb->andWhere(
    $qb->expr()->isNull('('.$subQb->getDql().')')
 );

我已经使用 exists 解决了问题,例如:$qb->expr()->exists($subQb->getDql())