数据库T-sql 问题,将A表的数据库字段导入到B中

A表有字段:A1_id,A2_name,A3_ageB表有字段:B1_id,A1_id,B2_name,B3_name,我现在想把两张表的数据合到一起来,求解------... A表有字段:A1_id,A2_name,A3_age B表有字段:B1_id,A1_id,B2_name,B3_name,我现在想把两张表的数据合到一起来,求解 --------》他们有主外键关系的
我想把A表的数据字段全部合到B表中间来!
展开
 我来答
x403879785
2011-11-28 · TA获得超过3838个赞
知道大有可为答主
回答量:1299
采纳率:100%
帮助的人:1153万
展开全部
SELECT * FROM A,B WHERE A.A_ID=B.A_ID 通过A_ID将两表数据合到一起。 如果你想把A表某字段的值插入B表,用INSERT INTO B(某列)SELECT 某列 FROM A WHERE 条件 列的数目要一致 如果想把A的字段添加到B表 用ALTER TABLE B ADD 列名 数据类型 [NULL/NOT NULL] 当然列名数据类型什么的要和A表中的一致。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一边一半
2011-11-22 · TA获得超过259个赞
知道小有建树答主
回答量:491
采纳率:0%
帮助的人:353万
展开全部
楼上说的那个好像有点问题。本来想写个游标+存储过程了。不过想想好像没那么复杂。
下面这个你试下。
insert into B(b1_id,a1_id,b2_name)
select (select max(isnull(a1_id,0)+1)),a1_id,A2_name from a
where a1_id not in
(select a1_id from b)

条件语句限制了B表中没有A1_ID的数据,才会导进来。
更多追问追答
追问
两张表中都有很多数据库的,我的意思是怎么追加到B表中去啊
追答
这个SQL的结果,就是将A表中的数据导入到B表中。
条件是,B表中的没有a1_id的数据。B表的主键按最大值+1进行插入操作。
SQL要一次性全执行,别分开。呵呵。我换行是为了意思表达清楚些。追加的列,你要自己手工写,因为我不知道你的表结构。但是KEY,VALUE必须是数据类型一致。
如下图:
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
iambise
2011-11-22 · TA获得超过714个赞
知道小有建树答主
回答量:834
采纳率:50%
帮助的人:497万
展开全部
楼上两位说的都没有问题,楼主,他们写的是一句话,不要拆开做2句话执行。
insert into B(b1_id,a1_id,b2_name) select (select max(isnull(a1_id,0)+1)),a1_id,A2_name from a where a1_id not in (select a1_id from b)
没细看语句,拷贝用一下,呵呵,反正是一句话,不能拆分。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
haoluogaga
2011-11-22 · TA获得超过2378个赞
知道小有建树答主
回答量:1265
采纳率:0%
帮助的人:1008万
展开全部
类型相同就行了吧。
insert into A(A1_id,A2_name,A3_age)
select B1_id,A1_id,B2_name,B3_name from B
追问
两张表中都有很多数据库的,我的意思是怎么追加到B表中去啊
追答
你可以用left join (左联接)或者 right join (右联接)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式