+ -
当前位置:首页 → 问答吧 → posrgresql 跨表更新

posrgresql 跨表更新

时间:2011-07-13

来源:互联网

用b表中usename的userid代替A表中的userid

update hqbaseinfo set userid=b.userid from hqbaseinfo as a,engineuser as b 
where a.username=b.usename

这条语句在sqlserver数据库执行没问题,
posrgresql中执行却达不到预期效果,执行后userid 变成一个常量,而不是预期的B表中的对应的值

B表engineuser 
"138";"王明惠"
"142";"秦春玲"
"188";"旧库资料"


执行后A表hqbaseinfo 
userid usename
"50";"旧库资料"
"50";"旧库资料"
"50";"旧库资料"
"50";"旧库资料"
"50";"王奕华"
"50";"马碧雯"
"50";"旧库资料"
"50";"旧库资料"

作者: loveness   发布时间: 2011-07-13

update hqbaseinfo set userid=b.userid from engineuser as b  
where hqbaseinfo.username=b.usename

作者: ACMAIN_CHM   发布时间: 2011-07-13