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ù)已經(jīng)創(chuàng)建完成,一共五條數(shù)據(jù),接下來我們?nèi)タ匆豢磚nion 和 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ù)合并顯示內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網(wǎng)!
相關文章:
1. MariaDB數(shù)據(jù)庫的外鍵約束實例詳解2. MariaDB的安裝與配置教程3. MariaDB性能調(diào)優(yōu)工具mytop的使用詳解4. Window7安裝MariaDB數(shù)據(jù)庫及系統(tǒng)初始化操作分析5. access不能打開注冊表關鍵字錯誤處理方法(80004005錯誤)6. SQL Server一個字符串拆分多行顯示或者多行數(shù)據(jù)合并成一個字符串7. SQL案例學習之字符串的合并與拆分方法總結8. SQLite 性能優(yōu)化實例分享9. Centos7 下mysql重新啟動MariaDB篇10. centos 7安裝mysql5.5和安裝 mariadb使用的命令
