msyql jion 和 union 的區別
-
join(連線查詢)
:是將兩個查詢(或表)的每一行,以“兩兩橫同對接”的方式,
所得到的所有行的結果,即一個表中的某行,跟另一個表中的某行。
進行“橫向對接”,得到一個新行。 -
union (聯合查詢)
:指將2個或2個以上的欄位數量相同的查詢結果,“縱向堆疊”後合併為一個結果。 -
測試資料
mysql> select * from test;
+----+--------+------+------+
| id | name | sex | age |
+----+--------+------+------+
| 1 | name1 | 女 | 15 |
| 2 | name1 | 女 | 15 |
| 4 | name2 | 男 | 30 |
| 5 | name50 | 男 | 12 |
+----+--------+------+------+
mysql> select * from user;
±—±------±-----+
| id | name | age |
±—±------±-----+
| 1 | name1 | 18 |
| 2 | name2 | 15 |
| 3 | name3 | 20 |
| 4 | name4 | 30 |
±—±------±-----+
-
查詢資料的結果區別:
join(連線查詢)
:橫向拼接查詢結果的資料。mysql> select * from test left join user on test.name=user.name; +----+--------+------+------+------+-------+------+ | id | name | sex | age | id | name | age | +----+--------+------+------+------+-------+------+ | 1 | name1 | 女 | 15 | 1 | name1 | 18 | | 2 | name1 | 女 | 15 | 1 | name1 | 18 | | 4 | name2 | 男 | 30 | 2 | name2 | 15 | | 5 | name50 | 男 | 12 | NULL | NULL | NULL | +----+--------+------+------+------+-------+------+
union (聯合查詢)
:縱向拼接查詢結果的資料。mysql> select id, name, age from test union select id, name, age from user; +----+--------+------+ | id | name | age | +----+--------+------+ | 1 | name1 | 15 | | 2 | name1 | 15 | | 4 | name2 | 30 | | 5 | name50 | 12 | | 1 | name1 | 18 | | 2 | name2 | 15 | | 3 | name3 | 20 | | 4 | name4 | 30 | +----+--------+------+
相關文章
- union all和union的區別
- union和union all的區別
- 理解full outer jion,union,union all
- union 和union all 使用區別
- sql中UNION和UNION ALL的區別SQL
- Union與Union All的區別
- 【SQL】UNION ALL 與UNION 的區別SQL
- Union和Union All到底有什麼區別
- Struct 和 Union有下列區別Struct
- oracle知識整理(1) union和union all的區別,left join和right join的區別(各種join的區別)Oracle
- union, struct, enum 的 大小區別Struct
- C++ 結構體struct和共同體union的區別C++結構體Struct
- sql中union和union all的用法SQL
- sql中union和union allSQL
- SQL UNION 和 UNION ALL 操作符SQL
- SQL Union和SQL Union All用法(轉)SQL
- ../和./和/的區別
- 和 的區別
- as 和 with的區別
- ||和??的區別
- /*和/**的區別
- LinkedList和ArrayList的區別、Vector和ArrayList的區別
- http和https的區別/get和post的區別HTTP
- msyql千萬級別查詢優化之索引優化索引
- ./ 和sh 的區別
- JQuery this和$(this)的區別jQuery
- jquery $(this) 和this的區別jQuery
- T和?的區別
- ++a和a++的區別
- makefile =和:=的區別
- struct和union和enum宣告的語法Struct
- SQL UNION 操作符 和 UNION ALL 操作符SQL
- Mybatis中#{}和${}傳參的區別及#和$的區別小結MyBatis
- `FULL JOIN` 和 `UNION ALL`
- 和區別
- MYSQL和SQL的區別MySql
- varchar和char的區別
- &self 和 self 的區別