mysql - 如何聯(lián)合查詢兩個(gè)結(jié)構(gòu)相同的表并且id不重復(fù)
問題描述
1.有兩個(gè)相同結(jié)構(gòu)的表guangdong_student,shanghai_student,希望聯(lián)合查詢表一,表二,得到表三的結(jié)果。使用union會(huì)導(dǎo)致id重復(fù),如何做到id自增
2.示例:
表一:guangdong_student+----+----------+| id | username |+----+----------+| 1 | jhon || 2 | may || 3 | abcd1111 |+----+----------+表二:shanghai_student+----+----------+| id | username |+----+----------+| 1 | jhon || 2 | mike || 3 | abcd |+----+----------+希望合并后的表:student+----+----------+| id | username |+----+----------+| 1 | jhon || 2 | may || 3 | abcd1111 || 4 | mike || 5 | abcd |+----+----------+
問題解答
回答1:在id是Primary key并且為auto_increment的情況下,執(zhí)行下面語句可以做到。insert into guangdong_student(username) select username from shanghai_student;
回答2:set @id=0;select @id := @id+1 id,distinct username, from ((select * from guangdong_student) gd union (select * from shanghai_student) sh) student;回答3:
select @id := @id+1 id, usernamefrom ( select username from guangdong_student union select username from shanghai_student) t1,(SELECT @id:=0) t2
相關(guān)文章:
1. angular.js - vue/react 渲染內(nèi)容抖動(dòng)2. javascript - 我寫的href跳轉(zhuǎn)地址不是百度,為什么在有的機(jī)型上跳轉(zhuǎn)到百度了,有的機(jī)型跳轉(zhuǎn)正確3. angular.js - react的redux和vue的vuex,angular呢4. 新手學(xué)習(xí)vue和node.js的困惑5. python socket 如何接收tcp/ip byte 格式的數(shù)據(jù)?6. angular.js - webstorm angular 語法沒有錯(cuò)誤,但有紅色波浪線警告?7. 一種簡(jiǎn)單的解決方案,用于檢查Web服務(wù)器上是否存在文件(迅速)8. 與遠(yuǎn)程瀏覽器通信時(shí)出錯(cuò)。它可能已經(jīng)死了。Selenium Web驅(qū)動(dòng)程序9. html - node-module文件有兩個(gè)在我的項(xiàng)目文件里10. python - beautifulSoup4 .select(’.bnrName’) 取不到到 text 文字
