sql server 语句如何将3个表合并成一个表?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql server 语句如何将3个表合并成一个表?相关的知识,希望对你有一定的参考价值。
如图中3个明细表,如何汇总成一个总表,sql 语句如何写,3个表中人员有一样的,也有不一样的。
先说一下我的思路:
首选你把表1,表2,表3中的数据都合并在一起表中,使用union all合并在一起。先不要管姓名是否会重复。
但是在执行合并的时候,需要对每一个待合并的数据,打上一个标签,代表这个是哪个表中来的数据,这个标签最后用于区分同一个人的不同的成绩是分别是多少,不能因为合并在一起后,就把同一个人的三项成绩给搞混了。
合并后的数据进行行转列的操作。
具体的SQL语句如下图所示:
select 参赛者姓名 from (
select 参赛者姓名 from 表1
union
select 参赛者姓名 from 表2
union
select 参赛者姓名 from 表3) as t
) as a
left join 表1 as b
on a.参赛者姓名=b.参赛者姓名
left join 表2 as c
on a.参赛者姓名=c.参赛者姓名
left join 表3 as d
on a.参赛者姓名=d.参赛者姓名
以上是关于sql server 语句如何将3个表合并成一个表?的主要内容,如果未能解决你的问题,请参考以下文章