标题:SQL如何从另一个表的全部数据追加到本表中
只看楼主
kb5077
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-11-30
结帖率:33.33%
 问题点数:0 回复次数:9 
SQL如何从另一个表的全部数据追加到本表中
如题,比如有两个表的结构一样,就取表A和表B,两个表结构一样,两个表都有内容,我现在要从表A中追加到表B中没有的数据到表B,请问具体语句怎么写,谢谢了
搜索更多相关主题的帖子: SQL 本表 数据 
2010-12-04 17:22
kb5077
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-11-30
得分:0 
知道的说一声,在此谢过了。。。
2010-12-04 17:23
aei135
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:12
帖 子:232
专家分:1176
注 册:2009-4-6
得分:0 
表有主键没?如果有的话,两个表主键相同的但其他字段内容有不同的话需要追加吗?
2010-12-04 18:35
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
得分:0 
insert into B (select * from a where a.关键字 not in(select b.关键字 from b))

★★★★★为人民服务★★★★★
2010-12-04 19:21
w1991y11q27
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-11-13
得分:0 
直接做连接啊,然后投影;或者做笛卡尔积,然后再一条条的扫描;把重复的去掉就可以了;具体的思想就是这样的,没有表不好写代码!
2010-12-04 22:36
刘易斯
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-11-28
得分:0 
我试了一下用下边的也可以
insert into B(字段1,字段2,……) select * from A where A.字段1 not in(select B.字段1 from B )
其中字段以是每个表的主键。
2010-12-04 23:55
kb5077
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-11-30
得分:0 
主键相同的不需要添加
2010-12-05 17:52
kb5077
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-11-30
得分:0 
比如:表A结构 name xb xl
      表B结构 name xb xl
主键是name,只有name不同就追加。
表A和表B都有数据,需要把表B追加到表A,条件是从表B只追加表A中没有的记录到表A
2010-12-05 17:58
刘易斯
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-11-28
得分:0 
大哥,看看下面这样行吗?
insert into A (name,xb,xl) select * from B where name not in(select name from A )
2010-12-05 20:03
xihabang
Rank: 2
等 级:论坛游民
威 望:1
帖 子:19
专家分:49
注 册:2010-12-5
得分:0 
insert into a where (
                      select * from B where B.主键 not in(
                                                           select A.主键 from A  ))
2010-12-06 14:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-327899-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.446492 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved