sql union all的用法
时间: 2024-02-29 16:50:36 浏览: 117
SQL中的UNION ALL是用于合并两个或多个SELECT语句的结果集的操作符。它返回所有的行,包括重复的行。
使用UNION ALL时,要求两个SELECT语句的列数和数据类型必须一致。它的语法如下:
```
SELECT column1, column2, ... FROM table1
UNION ALL
SELECT column1, column2, ... FROM table2;
```
其中,column1, column2等表示要选择的列,table1, table2等表示要选择的表。
UNION ALL操作符将两个SELECT语句的结果集按照列的顺序合并,并返回所有的行。如果有重复的行,也会全部返回。
举个例子,假设有两个表A和B,它们的结构如下:
表A:
```
+--+--+
| ID | Name |
+--+--+
| 1 | John |
| 2 | Alice |
+--+--+
```
表B:
```
+--+--+
| ID | Name |
+--+--+
| 2 | Bob |
| 3 | Mary |
+--+--+
```
如果执行以下SQL语句:
```
SELECT * FROM A
UNION ALL
SELECT * FROM B;
```
则会得到以下结果:
```
+--+--+
| ID | Name |
+--+--+
| 1 | John |
| 2 | Alice |
| 2 | Bob |
| 3 | Mary |
+--+--+
```
注意,UNION ALL返回的结果集中包含了所有的行,包括重复的行。
阅读全文