一个简单的问题,高分求救,急!!!!!!!!!!!!!,在线等待
在oracle中如果要修改a表中一个字段的值,它的值要从b表中一个对应的字段中取
修改语句该怎样写
要根据条件查询
怎么可以更新表中的一列多行记录,并且每行的记录不同
问题点数:100、回复次数:5Top
1 楼duanzilin(寻)回复于 2005-08-04 11:11:42 得分 20
update a set a.col = (select b.col from b where a.id = b.id)
where exists (select 1 from b where a.id = b.id)Top
2 楼PigAndCat(William)回复于 2005-08-04 11:15:18 得分 0
1是什么意思Top
3 楼bzszp(SongZip)回复于 2005-08-04 11:16:36 得分 20
最好加上max或者min,防止 返回多行 的错误。
update a set a.col = (select max(b.col) from b where a.id = b.id)
where exists (select 1 from b where a.id = b.id)
Top
4 楼bzszp(SongZip)回复于 2005-08-04 11:18:15 得分 5
exists语句,如果又返回值,则 更新 ,返回什么值 无所谓
select * from b where a.id = b.id
或
select col from b where a.id = b.id
都一样的效果。Top
5 楼CAINIAO_oooo()回复于 2005-08-04 15:25:46 得分 55
啊 又是你啊 上次不是跟你讲过了么Top




