【MySQL】union all 合并查询(详解)

首先我们要知道,union 和union all的区别。
union是去重合并,union all不去重合并。
首先合并的前提是2个表合并的内容的列的类型是一样的。
下面我们来设计2张表:
在这里插入图片描述

mysql> select * from student union
    -> select * from bookshelf where bookId <3;
+------+----------------+
| id   | name           |
+------+----------------+
|    1 | z1             |
|    2 | z2             |
|    3 | z3             |
|    4 | z4             |
|    1 | python程序设计 |
|    2 | java程序设计   |
+------+----------------+
6 rows in set (0.00 sec)

mysql> select * from student union all
    -> select * from bookshelf where bookId <3;
+------+----------------+
| id   | name           |
+------+----------------+
|    1 | z1             |
|    2 | z2             |
|    3 | z3             |
|    4 | z4             |
|    2 | z2             |
|    1 | python程序设计 |
|    2 | java程序设计   |
+------+----------------+
7 rows in set (0.00 sec)

猜你喜欢

转载自blog.csdn.net/weixin_54130714/article/details/123191676