• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

合并结构相同的多个表,该怎么解决

mysql 搞代码 7年前 (2018-06-05) 86次浏览 已收录 0个评论

合并结构相同的多个表
postgreSQL数据库中现在有多个结构完全相同的表,想将它们合并成一个表,各个表之间无重复记录。
如:
A: a b c
  1 3 5
  2 3 6
  3 3 7

B: a b c
  1 4 5
  2 4 6
  3 4 7

C: a b c
  1 5 5
  2 5 6
  3 5 7

合并后:
D:
  a b c
  1 3 5
  2 3 6
  3 3 7
  4 4 5
  5 4 6
  6 4 7
  7 5 5
  8 5 6
  9 5 7
注意a字段相当于id,用来计数。合并后这个字段要如上所示。

急求大侠解决,在线等。。。
谢谢

——解决方案——————–
SELECT a,b,c 
FROM A
UNION ALL
SELECT a,b,c
FROM B
UNION ALL
SELECT a,b,c
FROM C
——解决方案——————–
SELECT a,b,c
FROM A
UNION ALL
SELECT a+(select max(id) from A),b,c
FROM B
UNION ALL
SELECT a+(select max(id) from A)+(select max(id) from B),b,c
FROM C
——解决方案——————–
没有好办法,用程序代码去生成这个 select * from a union all select * from b …

然后序列1,2,3,4。。不要在SQL语句中生成,在程序中生成。
——解决方案——————–
insert into new_table(one,two) as (
 select b one,c two from a 
 union 
 select b one,c two from b
 union 
 select b one,c two from c)

表:new_table(id(自增),one,two) 

大概思路。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:合并结构相同的多个表,该怎么解决

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址