Symfony2 & Doctrine - 获取从数据源返回的行数

2022-08-30 13:47:25

我的Symfony2存储库类中有以下代码...

$query = $this->createQueryBuilder('foo')
        ->where('foo.bar = :id')
        ->setParameter('id', $myID)
        ->getQuery();

如何获取数据库找到的行数?

提前致谢


答案 1

您需要执行 DQL 来执行所需的操作。

$query = $this->createQueryBuilder()
              ->from('foo', 'f')
              ->where('foo.bar = :id')
              ->setParameter('id', $myID)
              ->getQuery();


$total = $query->select('COUNT(f)')
               ->getQuery()
               ->getSingleScalarResult();

答案 2

我认为你可以做这样的事情:

$query = $this->createQueryBuilder()
    ->select('COUNT(f.id)') 
    ->from('foo', 'f')
    ->where('foo.bar = :id')
    ->setParameter('id', $myID)
    ->getQuery();

$total = $query->getSingleScalarResult();

推荐