MYSQL使用Union將兩張表的數據合并顯示
union:用于連接兩個以上的 SELECT 語句的結果組合到一個結果集合中。多個 SELECT 語句會刪除重復的數據。
使用union操作符會將多張表中相同的數據取值一次,如果想將表1和表2中的值完整的顯示出來,可以使用union all。
演示小伙伴們自行創建一下表。
表1數據如下:
表2數據如下:
OK,表數據已經創建完成,一共五條數據,接下來我們去看一看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只會查出來四條數據。其中兩條是相同的數據,則顯示一條。
使用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條數據,ps:相同的數據也會查詢出來。
拓展:為了區分哪張表中的數據,我們可以這樣做
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
將兩張表中的數據按時間排序
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將兩張表的數據合并顯示的文章就介紹到這了,更多相關mysql數據合并顯示內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
