gpt4 book ai didi

mysql - 使用计数和抑制/忽略组

转载 作者:可可西里 更新时间:2023-11-01 08:18:39 24 4
gpt4 key购买 nike

是否可以在 select 子句中使用 group by 来抑制计数?我需要 count 来忽略 group by 子句

我得到了这个正在计算总条目数的查询。查询是通用生成的,因此我无法进行任何全面的更改,例如子查询等。

在某些特定情况下,需要一个分组依据来检索正确的行,因此不能删除分组依据

SELECT count(dv.id) num
FROM `data_voucher` dv
LEFT JOIN `data_voucher_enclosure` de ON de.data_voucher_id=dv.id
WHERE IF(de.id IS NULL,0,1)=0
GROUP BY dv.id

最佳答案

Is it possible to have count in the select clause with a group by which is suppressed in the count? I need the count to ignore the group by clause

好吧,您的问题的答案很简单,您不能拥有一个适用于所有结果的聚合,同时拥有一个 group by 语句。这就是 group by 创建改变聚合行为的组的全部目的:

The GROUP BY clause causes aggregations to occur in groups (naturally) for the columns you name.

比照this blog post这只是我在谷歌上找到的关于这个主题的第一个结果。

您需要重新设计您的查询,最简单的方法是创建一个子查询,或者一个糟糕的联合。但是,如果没有关于您希望此查询执行的操作的架构和一点上下文,我无法为您提供可行的替代方案。

我只能告诉你,你正试图用锤子拧紧螺丝...

关于mysql - 使用计数和抑制/忽略组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17011957/

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