求教SQL高手,用UPDATE怎么把一个表里的某列数据用另一个表内的数据更新掉?

现在我有两个表,假设为Table1、Table2,Table1有多个列,其中有两列为s_no和s_nameTable2有两列,s_no2和s_name2现在我想把Tabl... 现在我有两个表,假设 为Table1、Table2,
Table1有多个列,其中有两列为s_no和s_name
Table2有两列,s_no2和s_name2
现在我想把Table1中的s_name列用Table2中的s_name2替换掉,条件是Table1.s_no=Table2.s_no2
我也是这么写的,但为什么会出现这个错误提示呢?
“Cannot resolve the collation conflict between "Chinese_PRC_BIN" and "Chinese_PRC_CI_AS" in the equal to operation.”
展开
 我来答
googleyeyou
2010-11-08 · TA获得超过186个赞
知道小有建树答主
回答量:269
采纳率:100%
帮助的人:130万
展开全部
update table1 set s_name=(select s_name2 from table2 where s_no2=Table1.s_no)

前提是table1的s_no和table2的s_no2是一对一或者一对0的关系,一对多的话会出现错误
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jyl_19
2010-11-08 · TA获得超过1002个赞
知道小有建树答主
回答量:708
采纳率:0%
帮助的人:1053万
展开全部
排序规则不同,可以用COLLATE.
update table1 set s_name=(select s_name2 from table2 where s_no2=Table1.s_no) COLLATE Chinese_PRC_BIN
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a800768
2010-11-08 · TA获得超过1841个赞
知道大有可为答主
回答量:1928
采纳率:0%
帮助的人:1731万
展开全部
update Table1 set s_name=B.s_name2
from Table1 A,Table2.s_no2
where
A.s_no=B.s_no2
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
漠主浮沉C9756
2010-11-08 · TA获得超过301个赞
知道小有建树答主
回答量:519
采纳率:100%
帮助的人:260万
展开全部
1楼正解
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式