先创建d表,包含a、b、c表的字段全集。 先把a表的数据按照指定字段的方式插入d表 INSERT d(...) SELECT * FROM a 再把b、c表的数据更新到d表的对应字段 UPDATE d SET d.col3 = b.col2, d.col6 = b.col3 FROM d,b WHERE d.col1 = b.col1
INSERT d(...) SELECT * FROM a
UPDATE d SET d.col3 = b.col2, d.col6 = b.col3 FROM d,b WHERE d.col1 = b.col1
那就把 所有不同 的字段 都放在 d 表里, 然后insert into 进去吧
通过关联把数据放到d 表 insert into d select a. * ,b.12,b.13......b.19,c.22....c.30 from a join b on a.1=b.11 join c on a.1=c.21; 如果这个几个表数据量很大,完全没有必要放到一起。考虑到效率 有些时候需要对d表进行垂直拆分,拆分成 a b c表的。
有重复吗?如果三张表 字段都一样 直接 select * from a union select * from b union select * from c
没看明白 你前面说的 3个合成一个 是什么 逻辑关系
34,590
社区成员
254,589
社区内容
加载中
试试用AI创作助手写篇文章吧