MYSQL使用Union將兩張表的數(shù)據(jù)合并顯示
union:用于連接兩個以上的 SELECT 語句的結果組合到一個結果集合中。多個 SELECT 語句會刪除重復的數(shù)據(jù)。
使用union操作符會將多張表中相同的數(shù)據(jù)取值一次,如果想將表1和表2中的值完整的顯示出來,可以使用union all。
演示小伙伴們自行創(chuàng)建一下表。
表1數(shù)據(jù)如下:
表2數(shù)據(jù)如下:
OK,表數(shù)據(jù)已經創(chuàng)建完成,一共五條數(shù)據(jù),接下來我們去看一看union 和 union all 的使用。
使用union 看一下效果:
select t1.id id, t1.name name, t1.description description,t1.create_time time from table1 t1UNIONselect t2.id id, t2.name name, t2.description description,t2.create_date time from table2 t2
我們可以看到使用union只會查出來四條數(shù)據(jù)。其中兩條是相同的數(shù)據(jù),則顯示一條。
使用union all 看一下效果:
select t1.id id, t1.name name, t1.description description,t1.create_time time from table1 t1UNION ALLselect t2.id id, t2.name name, t2.description description,t2.create_date time from table2 t2
使用union all查出5條數(shù)據(jù),ps:相同的數(shù)據(jù)也會查詢出來。
拓展:為了區(qū)分哪張表中的數(shù)據(jù),我們可以這樣做
select t1.id id, t1.name name, t1.description description,t1.create_time time,’table1’ type from table1 t1UNION ALLselect t2.id id, t2.name name, t2.description description,t2.create_date time,’table2’ type from table2 t2
將兩張表中的數(shù)據(jù)按時間排序
select t3.* from (select t1.id id, t1.name name, t1.description description,t1.create_time time,’table1’ type from table1 t1UNION ALLselect t2.id id, t2.name name, t2.description description,t2.create_date time,’table2’ type from table2 t2) t3 order by t3.time desc
到此這篇關于MYSQL使用Union將兩張表的數(shù)據(jù)合并顯示的文章就介紹到這了,更多相關mysql數(shù)據(jù)合并顯示內容請搜索好吧啦網以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
