gpt4 book ai didi

php - doctrine 中的子查询计数 - querybuilder

转载 作者:行者123 更新时间:2023-12-05 06:29:41 27 4
gpt4 key购买 nike

我有一个简单的查询:

$this->qb->select('l.value')
->addSelect('count(l) AS cnt')
->addSelect('hour(l.time) AS date_hour')
->from(Logs::class, 'l')
->where('l.header = :header')
->groupBy('l.value')
->addGroupBy('date_hour')
->setParameter('header', 'someheader')

此代码选择 3 列有一个条件和两个 groupBy。

我想获取此查询的记录数。当然我不想下载所有记录并检查下载数据的大小。

问题:如何重建此查询并从数据库中获取结果作为 singleScalarValue()?

最佳答案

我认为你应该在这里使用(id column for count):

    ->addSelect('count(l) AS cnt')

类似这样,但如果您展示您的实体,我可以建议正确的解决方案:

         $this->qb->select('l')
->addSelect('count(l.id) AS cnt')
->addSelect('hour(l.time) AS date_hour')
->from(Logs::class, 'l')
->where('l.header = :header')
->groupBy('l.value')
->addGroupBy('date_hour')
->setParameter('header', 'someheader')

$count = $qb->getQuery()->getSingleScalarResult();

关于php - doctrine 中的子查询计数 - querybuilder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53336843/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com