MySQL两表相加查询方法
MySQL 是一种用于管理数据库的开源关系型数据库系统,其优点包括高性能和可靠性。在 MySQL 中,表的连接是一种常见的操作,尤其是在需要将两个表的数据进行相加操作时。
下面介绍一下如何使用 MySQL 实现两个表的相加查询操作。
步骤 1:创建两个表
我们需要创建两个表。在此示例中,我们将创建两个包含姓名和年龄信息的表。下面是创建两个表的 SQL 代码:
“`sql
CREATE TABLE table1 (
name VARCHAR(50),
age INT
);
CREATE TABLE table2 (
name VARCHAR(50),
age INT
);
第一个表名为“table1”,包含两个字段“name”和“age”;第二个表名为“table2”,也包含两个字段“name”和“age”。
步骤 2:在表中插入数据
我们需要向这两个表中插入一些数据。下面是向这两个表中插入数据的 SQL 代码:
```sql
INSERT INTO table1 VALUES ('John', 25);
INSERT INTO table1 VALUES ('Mike', 30);
INSERT INTO table1 VALUES ('Lisa', 28);
INSERT INTO table2 VALUES ('Emma', 22);
INSERT INTO table2 VALUES ('Tom', 35);
INSERT INTO table2 VALUES ('Alex', 26);
插入完数据后,两个表中的数据如下:
table1
| name | age |
| —- | — |
| John | 25 |
| Mike | 30 |
| Lisa | 28 |
table2
| name | age |
| —- | — |
| Emma | 22 |
| Tom | 35 |
| Alex | 26 |
步骤 3:执行两表相加查询
现在,我们可以使用以下 SQL 代码对这两个表进行相加查询:
“`sql
SELECT name, age FROM table1
UNION
SELECT name, age FROM table2;
该查询将返回两个表中的所有行,并将其中相同的行合并在一起。结果如下:
| name | age |
| ---- | --- |
| John | 25 |
| Mike | 30 |
| Lisa | 28 |
| Emma | 22 |
| Tom | 35 |
| Alex | 26 |
步骤 4:执行两表相加查询并去除重复行
如果我们想要从相加查询结果中去除重复的行,可以使用以下 SQL 代码:
```sql
SELECT name, age FROM table1
UNION DISTINCT
SELECT name, age FROM table2;
该查询使用关键字 “DISTINCT”,将结果中的重复行去除。结果如下:
| name | age |
| —- | — |
| John | 25 |
| Mike | 30 |
| Lisa | 28 |
| Emma | 22 |
| Tom | 35 |
| Alex | 26 |
结论
这就是使用 MySQL 实现两个表相加查询的方法。通过以上步骤,我们可以将两个表中的数据合并在一起,并且可以去除其中的重复行。在实际应用中,我们可以根据需要进行适当的调整和扩展。