如何无需重复SQL查询,获取各国籍选手的总击杀数?
解决方法
SQL查询优化
完全不用反复复制粘贴,只需要修改你的查询语句,用GROUP BY子句就能一次性统计所有国籍的总击杀数:
SELECT Nationality, SUM(`Kill`) AS total_kills_by_region FROM vct2 GROUP BY Nationality;
这个语句会自动按Nationality分组,计算每个国籍的击杀总数,直接输出所有你列出的国籍对应的结果。如果想要精准过滤出你指定的这些国籍,再加上WHERE子句即可:
SELECT Nationality, SUM(`Kill`) AS total_kills_by_region FROM vct2 WHERE Nationality IN ('Argentina', 'Belgium', 'Brazil', 'Canada', 'Chile', 'Finland', 'France', 'International', 'Kazakhstan', 'Latvia', 'South Korea', 'Sweeden', 'Turkey', 'Ukraine', 'United Kingdom', 'United States') GROUP BY Nationality;
(如果表中本身只有这些国籍数据,不加WHERE也能得到正确结果)
Tableau制作地图步骤
- 将查询结果导出为CSV/Excel,或者直接让Tableau连接你的数据库并运行上述查询
- 把
Nationality字段拖到画布的「地理」区域,Tableau通常会自动识别为国家/地区;如果识别错误,右键该字段选择「地理角色」→「国家/地区」手动设置 - 把
total_kills_by_region字段拖到「标记」卡的「大小」或「颜色」选项上,地图会根据击杀数的多少呈现不同的视觉效果 - 按需调整地图标签、配色、图例等样式,完成可视化制作
内容的提问来源于stack exchange,提问作者Cody Copenhaver
相关产品推荐
相关产品推荐

