【问题标题】:How To Find Duplicate, Count and Sum Values from different columns in MySQL?如何从 MySQL 中的不同列中查找重复、计数和求和值?
【发布时间】:2020-05-11 18:16:30
【问题描述】:

我有我的桌子

我想从 Name 和 Status 列中获取重复项,对它们进行计数,并对 Sum 列中的值求和。我想看起来像这样:

我是 SQL 新手,因此它可能是一个简单的答案,但我似乎找不到解决方案。

这是我得到的结果,但我似乎无法在没有错误的情况下得到计数和总和。

SELECT name, COUNT(*) AS recovered 
FROM complaints 
WHERE status = "Recovered" 
GROUP BY name 
HAVING COUNT(name) > 0

myQuery

【问题讨论】:

标签: mysql count mariadb pivot pivot-table


【解决方案1】:

你可以做条件聚合:

select 
    name,
    sum(status = 'Recovered') recovered,
    sum(status = 'Unrecovered') unrecovered,
    sum(case when status = 'Recovered' then `sum` end) total_recovered_value,
    sum(case when status = 'Unrecovered' then `sum` end) total_unrecovered_value
from mytable
group by name
order by name

旁注:sum 是语言关键字,因此不是列名的好选择。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-15
    • 2021-12-06
    • 1970-01-01
    • 1970-01-01
    • 2014-04-18
    • 2019-04-23
    • 2016-07-21
    • 1970-01-01
    相关资源
    最近更新 更多