我的英语不好,所以我向您展示我需要的示例。
包含这些列的表格:
id | name1 | name2
我需要将这两个查询的结果转换为一个
SELECT name1, COUNT(name1) as a
FROM partidos
GROUP BY name1
ORDER BY a DESC;
SELECT name2, COUNT(name2) as b
FROM partidos
GROUP BY name2
ORDER BY b DESC;
结果是“a + b”,我需要在一个查询中得到这个总和。
示例:
1 | james | carolina
2 | carolina | rupert
3 | mordor | james
4 | carolina | mordor
5 | paul | carolina
结果:
carolina 4
james 2
mordor 2
rupert 1
paul 1
最佳答案
如果要计算name1
和name2
中“名称”的数量,请使用union all
:
select name, count(*)
from ((select name1 as name
from partidos
) union all
(select name2 as name
from partidos
)
) p
group by name
order by count(*) desc;
关于mysql - 对不同字段中的相同值进行分组和计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29055418/