sql 2005 update问题
来源:百度知道 编辑:UC知道 时间:2024/05/26 07:19:05
set pu.pu_date = pude_b.need_date
from pude_b pu
where pude_b.pu_no = pu.pu_no
消息 4104,级别 16,状态 1,第 1 行
无法绑定由多个部分组成的标识符 "pude_b.pu_no"。
可以的追加100分
update pu
set pu.pu_date = pude_b.need_date
from pude_b,pu
where pude_b.pu_no = pu.pu_no
如果不加逗号的话
电脑会把pu当成pude-b的简称来处理
就会报‘无法绑定由多个部分组成的标识符’
update pu
set pu.pu_date =
(
select pude_b.need_date
from pude_b
where pude_b.pu_no = pu.pu_no
);
update pu1,pu2 set pu1.pu_date=pu2.need_date from pude_b pu1,pude_b pu2 where pu1.pu_no = pu2.pu_no;
update pu
set pu.pu_date = pude_b.need_date
from pude_b
where pude_b.pu_no = pu.pu_no
这样就可以了,意思就是根据pude_b的need_date来更新pu的pu_date
update pu
set pu.pu_date = pude_b.need_date
from pude_b,pu
where pude_b.pu_no = pu.pu_no
在from后面的俩表中间加个逗号
你要的效果是一个表的某列值给另一表的一列吧
更新语句不是那样用的
而且你要的效果也不是那么容易实现的
需要用到游标 估计你还没接触到
不过 看你的表像不是
如果不是那就简单了
update pude_b
set pu_date = need_date
where pu_no = pu_no
但是我就不明白你的条件说明意思
没必要给条件嘛
楼主还是把表给出来好点
不然都不晓得你的