我有一个MEMBERS
表具有以下相关栏目:如何从多个SQL选择器加入汇总结果?
Name
JoinDate
Level --1=Gold,2=Silver,3=Bronze**
我想创建一个查询返回一个成员总结,列出谁参加了由年份和会员级别的总数。基本上,我的结果集的列会是这样的:
| YEAR | GOLD | SILVER | BRONZE | TOTAL |
我能,银,铜奖成员分别采用以下3个查询得到每年不同的计数黄金:
SELECT YEAR(JoinDate) AS YEAR, COUNT(*) AS GOLD FROM Members
WHERE Level=1 GROUP BY YEAR(JoinDate) ORDER BY YEAR(JoinDate)
SELECT YEAR(JoinDate) AS YEAR, COUNT(*) AS SILVER FROM Members
WHERE Level=2 GROUP BY YEAR(JoinDate) ORDER BY YEAR(JoinDate)
SELECT YEAR(JoinDate) AS YEAR, COUNT(*) AS BRONZE FROM Members
WHERE Level=3 GROUP BY YEAR(JoinDate) ORDER BY YEAR(JoinDate)
我也可以用类似的查询获得总计:
SELECT YEAR(JoinDate) AS YEAR, COUNT(*) AS TOTAL FROM Members
GROUP BY YEAR(JoinDate) ORDER BY YEAR(JoinDate)
我的问题是我还没有找到一种方法来简化所有这些到一个查询。这是如何完成的?