sql 两表数据合并 union

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 两表数据合并 union相关的知识,希望对你有一定的参考价值。

参考技术A --两种合并方式,第一种用union all 合并保持数据列数不变
select * from table1
union all
select * from table2
union all
select * from table3

--第二种,合并后多个表的字段排列为一列
select * from table1,table2,table3
你说的应该是属于第二种,不能用union all
参考技术B 如果用union合并的话要求表的字段个数和类型都要一样,比较严格

如果你只是为了数据合并的话,可以直接写个select语句查询出结果就可以了追问

select 语句怎么查询啊 我就是要把这两张表 通过查询出来 显示为一张表数据

追答

试试下面这个吧,你两个表是不是没有关联的字段?
select a1,b1,c1
from 表一
union all
select a2,b2,c2
from 表二
比如说有关联字段,例如关联字段叫id
你就可以
select a1,b1,c1,a2,b2,c2
from 表一,表二
where 表一.id=表二.id
如果字段名称一样的数据数会无法识别,前面就要加上表名了,例如 表一.a1

追问

不是就是日期相同显示一行 如 2014-3-13:表一3条 表二2两天
合并就是3条数据 其中一条表二数据位空

以上是关于sql 两表数据合并 union的主要内容,如果未能解决你的问题,请参考以下文章

MySQL单机优化---分表分区分库

oracle sql union all 合并多列

请教:SQL同一数据库中,两个查询结果数据类型不同时的union all 合并问题

SQL查询结果一字段相同合并,另一字段为数字和逗号合并并去重

sql 用union合并合并查询结果

sql两表联查只要左表一条数据但是查完都多一条