Union和Union All到底有什麼區別
以前一直不知道Union和Union All到底有什麼區別,今天來好好的研究一下,網上查到的結果是下面這個樣子,可是還是不是很理解,下面將自己親自驗證:
Union:對兩個結果集進行並集操作,不包括重複行,同時進行預設規則的排序;
Union All:對兩個結果集進行並集操作,包括重複行,不進行排序;
下面進行簡單的測試(因為是測試,所以sql程式碼寫的很簡單,沒有什麼很嚴格的規範,只是為了理解這兩者之間的區別)
嚴格的標準寫法應該先判斷資料庫是否存在,表是否存在等等約束
第一步,建庫:
- CreatedatabaseTest
- go
- useTest
- go
第二步,建表:
- CreatetableTable1
- (
- idintnotnull,
- namevarchar(20)notnull
- )
- CreatetableTable2
- (
- idintnotnull,
- namevarchar(20)notnull
- )
第三步,插入測試資料:
- InsertintoTable1values(1,'姚羽')
- InsertintoTable1values(2,'邊兵兵')
- InsertintoTable1values(3,'袁磊')
- InsertintoTable2values(1,'姚羽')
- InsertintoTable2values(2,'柳春平')
- InsertintoTable2values(3,'張永超')
- InsertintoTable2values(4,'劉華健')
第四步,測試開始:
- select*fromTable1
- select*fromTable2
執行兩個表的查詢結果如下
可以很容易的看到,上面插入的測試資料當中,有一條是重複的
那麼我們 先看執行union 看看
- select*fromTable1
- union
- select*fromTable2
再執行union all 看看
- select*fromTable1
- unionall
- select*fromTable2
相信到此時,應該明白了union 和 union all 的區別了, 我以前也一直沒搞清楚,這次看視訊,就終於搞清楚了
相關文章
- union all和union的區別
- union和union all的區別
- union 和union all 使用區別
- sql中UNION和UNION ALL的區別SQL
- Union與Union All的區別
- 【SQL】UNION ALL 與UNION 的區別SQL
- sql中union和union allSQL
- sql中union和union all的用法SQL
- SQL UNION 和 UNION ALL 操作符SQL
- SQL Union和SQL Union All用法(轉)SQL
- `FULL JOIN` 和 `UNION ALL`
- 理解full outer jion,union,union all
- oracle知識整理(1) union和union all的區別,left join和right join的區別(各種join的區別)Oracle
- SQL UNION 操作符 和 UNION ALL 操作符SQL
- MySQL學習(五) UNION與UNION ALLMySql
- 查詢集合操作union與union all
- ORACLE中union/union all/Intersect/Minus用法Oracle
- Oracle中的Union、Union All、Intersect、MinusOracle
- msyql jion 和 union 的區別
- Struct 和 Union有下列區別Struct
- sql_union all_列別名SQL
- Oracle 中Union、Union All、Intersect、Minus(並,交,差)Oracle
- 表連線 join和(+)、union和uion allUI
- Oracle的集合操作(union、union all、intersect、minus集合函式)Oracle函式
- union all 最佳化案例
- sql_intersect交集_minus差集_並集union_union allSQL
- union, struct, enum 的 大小區別Struct
- MYSQL學習筆記24: 多表查詢(聯合查詢,Union, Union All)MySql筆記
- UNION效率比UNION ALL效率高——SQL優化之Everything is possibleSQL優化
- Oracle union all 不走索引的優化Oracle索引優化
- 【轉】UNION效率比UNION ALL效率高——SQL優化之Everything is possibleSQL優化
- VIPER 和 MVVM 到底有什麼區別MVVM
- GET 和 POST 到底有什麼區別?
- C++ 結構體struct和共同體union的區別C++結構體Struct
- union用法
- 統計學和機器學習到底有什麼區別?機器學習
- Typescript 中的 interface 和 type 到底有什麼區別TypeScript
- Android中drawable和mipmap到底有什麼區別Android