Home > Database > Mysql Tutorial > How to use the FULL OUTER JOIN function in MySQL to obtain the union of two tables

How to use the FULL OUTER JOIN function in MySQL to obtain the union of two tables

王林
Release: 2023-07-26 17:45:13
Original
2526 people have browsed it

How to use the FULL OUTER JOIN function in MySQL to obtain the union of two tables

In MySQL, the FULL OUTER JOIN function is a powerful connection operation that combines inner joins and outer joins. It can be used to get the union of two tables, that is, combine all the data in the two tables into a single result set. This article will introduce the usage of the FULL OUTER JOIN function and provide some sample code to help readers better understand.

The syntax of the FULL OUTER JOIN function is as follows:

SELECT *
FROM table1
FULL OUTER JOIN table2
ON table1.column = table2.column;
Copy after login

In this syntax, table1 and table2 are the two tables to be connected, column is the connection condition, and * means to select all columns.

Suppose we have two tables: Table A and Table B. Their structure and data are as follows:

Table A:

+----+--------+
| id | name   |
+----+--------+
| 1  | Tom    |
| 2  | Jerry  |
| 3  | Alice  |
+----+--------+
Copy after login

Table B:

+----+--------+
| id | name   |
+----+--------+
| 1  | Peter  |
| 2  | Jerry  |
| 4  | Bob    |
+----+--------+
Copy after login

Now we want to get the union of table A and table B.

The sample code using the FULL OUTER JOIN function is as follows:

SELECT *
FROM tableA
FULL OUTER JOIN tableB
ON tableA.id = tableB.id;
Copy after login

After executing the above code, we will get the following results:

+------+---------+---------+
| id   | name    | name    |
+------+---------+---------+
| 1    | Tom     | Peter   |
| 2    | Jerry   | Jerry   |
| 3    | Alice   | NULL    |
| NULL | NULL    | Bob     |
+------+---------+---------+
Copy after login
Copy after login

As can be seen from the above results, FULL The OUTER JOIN function includes all data from Table A and Table B. It merges rows with the same value in the two tables based on the join condition, and if there is no matching row in a table, fills the corresponding column with NULL.

In the above example, the rows with id 1 and 2 are present in both tables, so they are merged into one row. The row with id 3 only exists in table A, and the row with id 4 only exists in table B, so they are displayed as a separate row.

In addition to SELECT *, we can also selectively specify the required columns, as shown below:

SELECT tableA.id, tableA.name, tableB.name
FROM tableA
FULL OUTER JOIN tableB
ON tableA.id = tableB.id;
Copy after login

After executing the above code, we will get the following results:

+------+---------+---------+
| id   | name    | name    |
+------+---------+---------+
| 1    | Tom     | Peter   |
| 2    | Jerry   | Jerry   |
| 3    | Alice   | NULL    |
| NULL | NULL    | Bob     |
+------+---------+---------+
Copy after login
Copy after login

From the above example, we can see how to use the FULL OUTER JOIN function to obtain the union of two tables. It can help us merge the data in the two tables together, making data processing more convenient.

To summarize, the FULL OUTER JOIN function is a powerful connection operation in MySQL for obtaining the union of two tables. It can merge all the data from two tables into one result set and merge the rows with the same value based on the join condition. Through the introduction and sample code of this article, I hope it can help readers better understand the usage and usage skills of the FULL OUTER JOIN function.

The above is the detailed content of How to use the FULL OUTER JOIN function in MySQL to obtain the union of two tables. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template