多语言展示
当前在线:205今日阅读:91今日分享:37

SQL如何弄多表查询统计?

两个表具有的结构是一模一样,如若想统计人名出现的总数,可以将两个表先用union all合并到一起,然后再进行统计。
工具/原料

电脑一台

方法/步骤
1

eg:以下有两个表:成绩表A与成绩表B,当然这两个表的结构是完全一样的,分别都有20条记录,但两个表有部分记录是重复的,这时该如何做?

2

如果将两个表合并到一起,可以使用union all。注意,这里必须加上all,否则,那些重复的记录就会被排除掉了,从而导致出现的总数不准确。例如,下面的语句没有加all,输出的姓名记录数只有25个,有另外15个重复的就可以被被排除掉了

3

所以,一定要加上all。这样得到两个表的合集后,再用括号将其包起来,把它作为一个表来处理,再次统计即可。sql语句如下:select 姓名,count(*) as 出现次数 from (select 姓名 from 成绩表A union all select 姓名 from 成绩表B) group by 姓名

注意事项

喜欢关注点赞!

推荐信息