SQL中UNION和UNION ALL的詳細用法

2021-08-02 18:48:52 字數 1314 閱讀 5039

在開發中,有些資料的儲存可能涉及到分庫分表,查詢的時候,可能需要查詢所有的分表,這個時候,就需要用到union或者union all,下面介紹一下union的用法以及與union all的區別:

union操作符用於合併兩個或多個select語句的結果集,這裡需要注意的是:union內部的select語句必須擁有相同數量的

列,列也必須擁有相似的資料型別,同時,每條select語句中列的順序必須相同。

union語法:

select column_name(s) from table_name1

union

select column_name(s) from table_name2

union操作符合併的結果集,不會允許重複值,如果允許有重複值的話,使用union all.

union all語法:

select column_name(s) from table_name1

union all

select column_name(s) from table_name2

union結果集中的列名總等於union中第乙個select語句中的列名。

這裡我就不舉例子說明,重點總結下我在專案開發中遇到的問題:1、由於需要合併十個select語句,寫法上需要用到sql中;.2、在寫sql語句是,用到了order by,要用括號區分開,要不會報錯。

sql語句寫法:

select t.comments_id,t.product_id,t.comment,t.order_path from (

(select c.comments_id,c.product_id,c.comment,i.order_path,c.p_index,c.t_index,c.title,c.time

from $ as c left join `gshop_comments_img` as i on c.comments_id = i.comments_id

where c.object_type=2 and c.display=1 and c.is_show=1

and c.t_index=1

group by c.product_id order by c.p_index asc,c.t_index desc,c.title desc,c.time desc limit 14)

) tgroup by t.product_id order by t.p_index asc,t.t_index desc,t.title desc,t.time desc limit 14

sql中union和union all用法

如果我們需要將兩個select語句的結果作為乙個整體顯示出來,我們就需要用到union或者union all關鍵字。union 或稱為聯合 的作用是將多個結果合併在一起顯示出來。union和union all的區別是,union會自動壓縮多個結果集合中的重複結果,而union all則將所有的結果全...

SQL中Union和Union All的用法

union 操作符 union 操作符用於合併兩個或多個 select 語句的結果集,請注意,union 內部的 select 語句必須擁有 相同數量的列,列也必須擁有 相似的資料型別,同時,每條 select 語句中的列的 順序必須相同。union跟 join 有些許類似,因為這兩個指令都可以由多...

sql中UNION和UNION ALL的區別

寫sql時我們經常會遇到需要把從多張表查詢的集果集進行合併。這時就用到了union。使用union或union all 時一定要保證查詢的列的一致性 不然sql會報錯。欄位不一致的話可以用單引號來佔位。例 select t102.ci id as res id,t102.citype id asre...