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 使用區別
- sql中UNION和UNION ALL的區別SQL
- oracle知識整理(1) union和union all的區別,left join和right join的區別(各種join的區別)Oracle
- Struct 和 Union有下列區別Struct
- sql中union和union all的用法SQL
- union和union all 關鍵字
- ../和./和/的區別
- LinkedList和ArrayList的區別、Vector和ArrayList的區別
- http和https的區別/get和post的區別HTTP
- ||和??的區別
- /*和/**的區別
- union和enum使用
- msyql樂觀鎖和悲觀鎖
- jquery $(this) 和this的區別jQuery
- JQuery this和$(this)的區別jQuery
- T和?的區別
- makefile =和:=的區別
- ++a和a++的區別
- ./ 和sh 的區別
- msyql千萬級別查詢優化之索引優化索引
- `FULL JOIN` 和 `UNION ALL`
- 和區別
- springmvc和springboot的區別SpringMVCSpring Boot
- SDK和API的區別?API
- ArrayList和LinkedList的區別?
- button和submit的區別MIT
- MTV和MVC的區別MVC
- hadoop和spark的區別HadoopSpark
- rpop 和 brpop的區別
- WebApi和MVC的區別WebAPIMVC
- GET和POST的區別?
- ArrayList和LinkedList的區別
- WBS和TASK的區別?
- JavaScript中for in 和for of的區別JavaScript
- innerText 和 textContent 的區別?
- var 和 let 的區別
- @JsonProperty和@JsonAlias的區別JSON