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

A表 B表

A表、B表都有address_ID这一列,B表中的addressname是address_ID对应的具体内容。请问,如何将A表中的address_ID改为B表中对应的addressname?
1楼、2楼你们的回答确定是sql sever上的语句吗??

 

 

 

-- 先更改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

 

 

 

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-03-15
呵呵,楼上的update语句里,连B表都没有,不报错就怪了。

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

执行之前,确认A表address_id字段的类型和长度。本回答被网友采纳
第2个回答  2013-03-15
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 为字符型,且宽度足够

第3个回答  2013-03-19
update A表 set A表.address_Id=B表.addressname from B表 where A表.address_ID=B表.address_Id
第4个回答  2013-03-15
--查询时翻译字段
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

本回答被网友采纳

SQL怎么把一个表字段信息(ID)修改为对应另一个表的内容
-- 先更改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

UPDATE语句:将一个表里的字段更新到另一个表的字段里的语句
UPDATE语句是SQL中一种强大的工具,允许我们更新数据库中的数据。在某些场景下,我们可能需要将一个表中的字段更新为另一个表的对应字段。例如,在一个成绩查询系统中,可能需要修改一张表,增加一个字段,然后将另一个表的特定ID复制过来。此时,编写循环处理可能并不高效,使用SQL语句则更为简便。考虑...

sql update语句 一张表的数据更新到另一张表
在数据库操作中,SQL的UPDATE语句用于更新表中的数据。当您需要将一张表的数据更新到另一张表时,可以使用JOIN操作将两个表连接起来,并根据特定条件进行数据迁移。例如,假设您有两张表:tbl_1 和 tbl_2。在这两个表中,表tbl_1的类别字段和表tbl_2的物料组描述字段值相同,您希望将表tbl_2的...

sql怎么把一个表中字段的部分内容替换成另一个表字段的内容
-- tableb 通过 aid 关联tablea 的id,把tableb的fielda字段写入tablea的fielda字段UPDATE tablea SET fielda = (select fielda from tableb where tablea.id=tableb.aid)-- 关联方式一样,把tablea中fielda的字段中的特定字符串替换成tableb中指定字段的值update tablea set fielda = REPLAC...

更新一个表的字段值等于另一个表的字段值的SQL语句
SQL语句如下:update a set a.ty2=b.ty1 from t2 a,t1 b where a.n2=b.n1 更新t2表的ty2字段的值为t1表的ty1字段的值,条件是a表的n2=b表的n1

SQL如何根据一个表的ID更新另外一个表
by UserID"rst.open sql,conn,1,1 '这里假设conn是一个adodb.connection对象,并已经连接数据库.while not rst.eof sql="update A set A.JJ_ALL='"&rst("JJ_ALL")&"' where A.UserID='"&rst("UserID")&"'"conn.execute(sql)rst.movenext wend rst.close set rst=nothing > ...

sql怎么将一张表的字段赋值给另一张表
插入数据insert into TbYTZ(UserID) select UserID from TbUser更新数据则在TbUser和TbYTZ两个表要有一个关系。如TbUser.a1=TbYTZ.a2UPDATE TbYTZ SET TbYTZ.UserID = (SELECT UserID FROM TbUser WHERE TbUser.a1=TbYTZ.a2)结构化查询语言(英文简称:SQL)是一种特殊目的的编程语言,是一种...

sql存储过程从一张表中查询到的值作为另一张表的新的字段
如果两表字段相同,则可以直接这样用。insert into table_a select * from table_b如果两表字段不同,a表需要b中的某几个字段即可,则可以如下使用:insert into table_a(field_a1,field_a2,field_a3) select field_b1,field_b2,field_b3 from table_b还可以加上where条件 ...

SQL语句中,把一个表的关键字段值赋给另一个表的那句话怎么写?
sql现在需要取得tit表里的t_id字段的值出来,立刻写到qst表里去 set N=select identity (第1个赋值语句)'N=select identity (第2个赋值语句)sql="insert into qst(q_id)values (n)"conn.execute sql用两种赋值语句都不能写进去,而且还出错错误类型:Microsoft VBScript 编译器错误 (0x800A03E...

怎样将sql数据库中同一表中的一列数据更改为另外一列的数据?
1、打开SQLServerManagement管理工具,使用sql语句创建一张测试表:2、在测试表中,插入3条测试数据:3、查询刚刚插入的数据:select*fromtblUpdate;4、使用一条语句批量修改整个表的数据,慎用:updatetblUpdatesetCol2='女';5、使用一条语句批量修改指定条数的记录:updatetblUpdatesetCol2='第二次修改'...

相似回答