您的位置:首页 > 其它

关于结构相同多表合并问题

2004-12-01 13:08 537 查看
关于结构相同多表合并问题
其实这个问题很简单的。

两个表test1和test2(两个表的结构是一样的)
test1 数据如下:
+---+--------+
| a | b |
+---+--------+
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
+---+--------+

test2 数据如下:
+---+--------+
| a | b |
+---+--------+
| 1 | 4 |
| 2 | 5 |
+---+--------+

通过对两个表查询,如何得到如下的数据
+---+--------+
| a | b |
+---+--------+
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
| 1 | 4 |
| 2 | 5 |
+---+--------+

可以使用
select * from test1 union select * from test2 来实现

同时也可以分别对每个表指定查询条件,如下:
select * from test1 where a=3 union select * from test2 where a=2

执行结果如下:
+---+--------+
| a | b |
+---+--------+
| 3 | 3 |
| 2 | 5 |
+---+--------+

还有一个注意问题,所有表的字段个数及类型必须相同,如不能使用如下的sql
select a from test1 union select a,b from test2 (字段个数不匹配)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: