UNION

`UNION` 是 SQL 中的一个操作符,用于将两个或多个 `SELECT` 语句的结果合并成一个结果集。使用 `UNION` 时,以下规则需要遵守:1. 每个 `SELECT` 语句必须有相同数量的列。2. 每个 `SELECT` 语句

UNION

`UNION` 是 SQL 中的一个操作符,用于将两个或多个 `SELECT` 语句的结果合并成一个结果集。使用 `UNION` 时,以下规则需要遵守:

1. 每个 `SELECT` 语句必须有相同数量的列。

2. 每个 `SELECT` 语句中的列必须具有相似的数据类型。

3. 每个 `SELECT` 语句的结果列顺序必须相同。

4. 默认情况下,`UNION` 会去除重复的行,只保留唯一的行。如果需要包含重复行,可以使用 `UNION ALL`。

### SQL `UNION` 语法

```sql

SELECT column1, column2, ...

FROM table1

UNION

SELECT column1, column2, ...

FROM table2;

```

### 代码示例

假设我们有两个表:`employees` 和 `managers`。

**employees 表**:

```plaintext

+----+----------+

| id | name |

+----+----------+

| 1 | John |

| 2 | Jane |

| 3 | Mike |

+----+----------+

```

**managers 表**:

```plaintext

+----+----------+

| id | name |

+----+----------+

| 4 | Alice |

| 5 | Bob |

+----+----------+

```

现在,我们想要合并这两个表中的所有员工和经理的名字。

```sql

SELECT id, name FROM employees

UNION

SELECT id, name FROM managers;

```

这个查询的结果将是:

```plaintext

+----+----------+

| id | name |

+----+----------+

| 1 | John |

| 2 | Jane |

| 3 | Mike |

| 4 | Alice |

| 5 | Bob |

+----+----------+

```

注意,如果 `employees` 表和 `managers` 表中有相同的 `id`,那么结果集中只会包含一个这样的行,因为 `UNION` 默认去除了重复的行。

如果你想要包含所有行,包括重复的行,可以使用 `UNION ALL`:

```sql

SELECT id, name FROM employees

UNION ALL

SELECT id, name FROM managers;

```

发布者:admin,转转请注明出处:http://www.yc00.com/web/1754458147a5163798.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信