SQL怎么把一个表字段信息(ID)修改为对应另一个表的内容 100

A表B表A表、B表都有address_ID这一列,B表中的addressname是address_ID对应的具体内容。请问,如何将A表中的address_ID改为B表中对... A表 B表

A表、B表都有address_ID这一列,B表中的addressname是address_ID对应的具体内容。请问,如何将A表中的address_ID改为B表中对应的addressname?
1楼、2楼你们的回答确定是sql sever上的语句吗??
展开
 我来答
jlyzlzb
2013-03-15 · TA获得超过163个赞
知道小有建树答主
回答量:158
采纳率:0%
帮助的人:87.4万
展开全部

 

 

 

-- 先更改A表中列的数据类型

ALTER TABLE A ALTER COLUMN address_ID VARCHAR(128)

 

-- 开始联接查询,条件更新

UPDATE a

SET  a.address_ID = b.addressname

FROM a, b

WHERE a.address_ID = b.address_ID

SELECT  *  FROM a

 

 

 

朋从戎3K
2013-03-15 · 超过30用户采纳过TA的回答
知道答主
回答量:41
采纳率:100%
帮助的人:72.2万
展开全部
呵呵,楼上的update语句里,连B表都没有,不报错就怪了。

update A set A.address_id = (select B.addressname from B where B.address_id = A.address_id)

执行之前,确认A表address_id字段的类型和长度。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2013-03-15 · TA获得超过2184个赞
知道小有建树答主
回答量:631
采纳率:100%
帮助的人:636万
展开全部
update a set a.address_id = b.addressname where a.address_id=b.addree_id

执行语句前最好检查a.address_id 的长度是否和b.addressname一致,最好大于等于后者,这样转换后信息不丢失。
另外,要求a.address_id为字符型。
追问
update A set A.address_id = B.addressname where A.address_id=B.address_id

为什么报错啊

能留个联系方式吗 详谈~~
追答
不好意思,没验证。现在把经过验证的给你。在sql2000,2005,2008上通过
UPDATE a
SET address_id = c.addressname
FROM a INNER JOIN
(SELECT address_id, addressname
FROM b) AS c ON a.address_id = c.address_id
绝对不报错。
注意a表address_id 为字符型,且宽度足够
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
冰凌水晶平平
2013-03-19
知道答主
回答量:16
采纳率:0%
帮助的人:4.8万
展开全部
update A表 set A表.address_Id=B表.addressname from B表 where A表.address_ID=B表.address_Id
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ghotos
2013-03-15 · TA获得超过280个赞
知道小有建树答主
回答量:435
采纳率:0%
帮助的人:358万
展开全部
--查询时翻译字段
select A.address_ID,B.addressname from A,B where A.address_ID = B.address_ID

go

--真正update表A
alter table A alter column address_ID varchar(128)

update A set A.address_id = B.addressname where A.address_id=B.addree_id
追问
update A set A.address_id = B.addressname where A.address_id=B.address_id

为什么报错啊
能留个联系方式吗 ? 详谈~~
追答
我晕,纯属失误,这句应该没问题了

update a set a.address_ID = b.addressname from a,b where a.address_ID = b.address_ID
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式