因此,我有一个电子邮件数据库,每个发送的电子邮件都有自己的行。我试图弄清楚每个用户被发送了多少次。因此,我使用此查询来找出每个用户已被邮寄多少次。

SELECT count(`id`)
FROM `bde_export`
WHERE `record.type` = 'senttomta'
GROUP BY `user.id`


现在,我要尝试的是计算该计数,因此我得到了一个摘要,告诉我有1,2,3,4次发送过多少用户,依此类推。我知道这有点令人困惑,请让我知道是否需要澄清。

最佳答案

好吧,你为什么不尝试另一个计数???
像这样

 SELECT count(`tmp`.*) FROM (
   SELECT count(`id`)
   FROM `bde_export`
   WHERE `record`.`type` = 'senttomta'
   GROUP BY `user`.`id`

) `tmp`


我不知道您的问题到底是什么,但是根据目前的解释,我认为它是可行的。我只是复制了您的查询,但没有更改。

但是,如果不满足您的要求,我建议您尝试以下操作:

 SELECT sum(`tmp`.`count`) FROM (
   SELECT count(`id`) AS `count`
   FROM `bde_export`
   WHERE `record`.`type` = 'senttomta'
   GROUP BY `user`.`id`

) `tmp`

10-04 21:33
查看更多