我有一张这样的桌子
id genre genre2
1 25 0
2 12 25
3 25 12
4 18 17
5 19 14
Run Code Online (Sandbox Code Playgroud)
我想计算两个列中不同的流派id和它们的计数,但合并为一个
并希望得到这样的结果
genre count
25 3
12 2
18 1
19 1
17 1
14 1
0 1
Run Code Online (Sandbox Code Playgroud)
我已经尝试了工会,并且计数,以及我想到的一切,但我无法实现我想要的结果,最接近的是制作两个查询和UNION它们,但它不像我想要的那样工作
有任何想法吗?谢谢您的帮助
你必须UNION ALL改用UNION.
SELECT
genre, COUNT(*) cnt
FROM
(SELECT genre FROM tbl
UNION ALL
SELECT genre2 FROM tbl) a
GROUP BY genre
ORDER BY cnt DESC
Run Code Online (Sandbox Code Playgroud)
您可以在SQL FIDDLE上尝试它