加入表t1有下列数据
列名:
a,b,c
对应的值:
1, ,2
3, ,4
1, ,3
7, ,5
...
另一个表t2有一列d
值为:
5
6
3
9
...
执行insert t1 (b) select d from t2;
结果成了:
1, ,2
3, ,4
1, ,3
7, ,5
...
,5,
,6,
,3,
,9,
...
怎么实现以下操作
1, 5,2
3,6 ,4
1,3 ,3
7,9 ,5
...
怎么将表的某一列插入到另一张表的某一空列?
答案:3 悬赏:30
解决时间 2021-03-07 08:38
- 提问者网友:浪荡羁士
- 2021-03-06 15:12
最佳答案
- 二级知识专家网友:不羁的心
- 2021-03-06 16:44
你这不能叫插入,叫更新
给你个方法,,,
1、你将2个表都增加一个自增字段(打个比方2个表都加1个自增字段id)
2、这样你2个表就可以关联更新了
运行以下语句就可以了
update t1 set t1.b=t2.d
from t1 inner join t2 on t1.id=t2.id
算了,,,我给你写出详细的吧,,,
CREATE TABLE t1(a INT ,b INT ,c int)
CREATE TABLE t2(d int)
INSERT INTO dbo.t1
( a, b, c )
SELECt 1,'',2
UNIOn ALL
SELECT 3,'',4
UNIOn ALL
SELECT 1,'',3
UNIOn ALL
SELECT 7,'',5
INSERT INTO dbo.t2
( d )
SELECT 5
UNIOn ALL
SELECT 6
UNIOn ALL
SELECT 3
UNIOn ALL
SELECT 9
----加入自增字段
ALTER TABLE t1 ADD id INT IDENTITY(1,1)
ALTER TABLE t2 ADD id INT IDENTITY(1,1)
---更新t1中的b
update t1 set t1.b=t2.d
from t1 inner join t2 on t1.id=t2.id
---删除t1中的自增字段id
alter table t1 drop column id
SELECT * FROM t1
结果:
1 5 2
3 6 4
1 3 3
7 9 5
给你个方法,,,
1、你将2个表都增加一个自增字段(打个比方2个表都加1个自增字段id)
2、这样你2个表就可以关联更新了
运行以下语句就可以了
update t1 set t1.b=t2.d
from t1 inner join t2 on t1.id=t2.id
算了,,,我给你写出详细的吧,,,
CREATE TABLE t1(a INT ,b INT ,c int)
CREATE TABLE t2(d int)
INSERT INTO dbo.t1
( a, b, c )
SELECt 1,'',2
UNIOn ALL
SELECT 3,'',4
UNIOn ALL
SELECT 1,'',3
UNIOn ALL
SELECT 7,'',5
INSERT INTO dbo.t2
( d )
SELECT 5
UNIOn ALL
SELECT 6
UNIOn ALL
SELECT 3
UNIOn ALL
SELECT 9
----加入自增字段
ALTER TABLE t1 ADD id INT IDENTITY(1,1)
ALTER TABLE t2 ADD id INT IDENTITY(1,1)
---更新t1中的b
update t1 set t1.b=t2.d
from t1 inner join t2 on t1.id=t2.id
---删除t1中的自增字段id
alter table t1 drop column id
SELECT * FROM t1
结果:
1 5 2
3 6 4
1 3 3
7 9 5
全部回答
- 1楼网友:统治我的世界
- 2021-03-06 18:27
不知道你这是在什么情况下执行;是程序中,还是数据库中?
正常来说 修改t1 应该使用update
类似 update t1 set b=(select d from t2) 这样的格式才行,要注意循环
- 2楼网友:如果这是命
- 2021-03-06 17:03
1、先打开两张表,在a表中选择要复制的列,右键,选择复制。
2、打开b表,在要插入的列边上右键,选择插入复制单元格。就可以将整列插入了。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯