小猿圈SQL之UNION與UNION ALL的區別

有不少朋友對union和union all二者搞不明白,那二者的區別是什麼呢?小猿圈加加詳細說一下針對二者的區別,對這個有疑惑的朋友們,跟着小編往下走。排序

UNION用的比較多union all是直接鏈接,取到得是全部值,記錄可能有重複  union 是取惟一值,記錄沒有重複 get

一、UNION 的語法以下:io

    [SQL 語句 1]效率

      UNION語法

    [SQL 語句 2]nio

二、UNION ALL 的語法以下:總結

    [SQL 語句 1]數據

      UNION ALL集合

    [SQL 語句 2]去重

效率:

UNION和UNION ALL關鍵字都是將兩個結果集合併爲一個,但這二者從使用和效率上來講都有所不一樣。

一、對重複結果的處理:UNION在進行表連接後會篩選掉重複的記錄,Union All不會去除重複記錄。

二、對排序的處理:Union將會按照字段的順序進行排序;UNION ALL只是簡單的將兩個結果合併後就返回。

從效率上說,UNION ALL 要比UNION快不少,因此,若是能夠確認合併的兩個結果集中不包含重複數據且不須要排序時的話,那麼就使用UNION ALL。

簡單總結:

UNION去重且排序

UNION ALL不去重不排序

存在困惑的朋友解除疑惑了吧!之後你們在SQL運用中但願能夠正確使用union和union all,對小編文章感興趣的朋友能夠去小猿圈看看,有更多文章等着你們。

相關文章
相關標籤/搜索