MySQL SUM()、COUNT() 和 GROUP BY

标签 mysql sql

我有一个关于 MySQL 的特殊问题。请查看下面的查询和结果集:

SELECT `SentTo`, 
       `Read`
FROM `Emails` as t

hello@mydomain.com   | 1
--------------------------------
hello@mydomain.com   | 0
--------------------------------
hello@mydomain.com   | 1
--------------------------------
support@mydomain.com | 0
--------------------------------
support@mydomain.com | 1
--------------------------------

我想获取每封电子邮件的电子邮件计数,以及总阅读量。我将通过减去总和并在脚本端阅读来获得未读,这里真的不需要它。

Email                | Total | Read
--------------------------------------
hello@mydomain.com   |   3   |   1
--------------------------------------
support@mydomain.com |   2   |   1
--------------------------------------

有什么建议吗?我曾尝试对此应用子查询,但找不到合适的解决方案。

最佳答案

这应该可以使用 GROUP BY:

SELECT `SentTo`,
       COUNT(*) Total,
       SUM(`Read`=0) 
FROM Emails
GROUP BY `SentTo`

关于MySQL SUM()、COUNT() 和 GROUP BY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25986545/

相关文章:

Mysql函数从过程调用返回行数

php - fatal error : Uncaught Error: Call to undefined function mysql_pconnect()

mysql - 基于 3 个条件选择 3 行的最佳 MySQL 索引和查询

Python MySQLdb转义字符: query works in MySQL but not in python MySQLdb

mysql - 是否可以独立连接MySQL行

Mysql函数查找两个日期之间的总秒数

sql - Mysql:每月统计记录(包括零条)

sql - 有没有办法在 SQL Server 游标中使用参数?

mysql - 将所有内容从一个表复制到另一个表 - 更改值并拥有自动递增 ID?

sql - Slick - 参数在查询模板中被忽略