1:update a
set a_chr=(select b_chr from b where b.id=a.id);
2:update a
set a.a_chr=b.b_chr
from a
inner join b
on a.id=b.id ;
问题:
A:这两句SQL实现同样的效果,在SQL SERVER 中都能正常运行,为何在ORACLE中只有第1种写法能
正常运行,而第2种写法会报错?
B:在ORACLE中想实现类似第2种写法的话,该怎么写?
set a_chr=(select b_chr from b where b.id=a.id);
2:update a
set a.a_chr=b.b_chr
from a
inner join b
on a.id=b.id ;
问题:
A:这两句SQL实现同样的效果,在SQL SERVER 中都能正常运行,为何在ORACLE中只有第1种写法能
正常运行,而第2种写法会报错?
B:在ORACLE中想实现类似第2种写法的话,该怎么写?
解决方案 »
- 关于Net8 Assistant测试不成功问题
- 超级菜的问题
- 抗日新方式!!!kkiillll $%^&#日¥#¥本@!#猪&&台¥#¥独!D分子!!!
- 如果用一个字段来保存各种文章,这个字段应该设置成什么类型,另外“'”号的问题如何解决?
- 动态sql的commit问题
- sql问题,大伙看看先!
- 求助 一个关于显示的sql语句?
- ******这条SQL为什么不能执行,解决立即给分*****
- penitent(只取一瓢), 弱水三千 大哥来看一眼,这是调用存储过程的进化的问题
- 在服务中management server老出现问题,那位高手帮我一把?
- 求一Sql语句,如果有重复的根据某字段条件来取数据
- ORACLE 存储过程问题(大家给些建议)
B.update a set a_chr=(select b_chr from b where id=a.id)
where exists(select 1 from b where id=a.id)
或者
update (select a.a_chr,b.b_chr from a inner join b on a.id=b.id)
set a_chr=b_chr
b表的id列要有唯一约束
where exists(select 1 from b where id=a.id)