把A中的多个字段更新成与B中相应字段的值。
如果是一条的话还好写一点,update A set person_name=(select person_name from 表B where ..) where ..
但是现在要更新多个字段,如果每个字段都那么写的话,会很罗嗦的。
然后我想按照下面这种方法写,但是出现错误:
update A set a.person_name=b.person_name ,a.cetf_id=b.cetf_id from 表A a , 表B b
where a.person_id = b.person_id希望大家能帮我改改,写出来正确的
如果是一条的话还好写一点,update A set person_name=(select person_name from 表B where ..) where ..
但是现在要更新多个字段,如果每个字段都那么写的话,会很罗嗦的。
然后我想按照下面这种方法写,但是出现错误:
update A set a.person_name=b.person_name ,a.cetf_id=b.cetf_id from 表A a , 表B b
where a.person_id = b.person_id希望大家能帮我改改,写出来正确的
解决方案 »
- pl/sql develop 调试f9问题
- ORA-02062: distributed recovery received DBID e46a92fe, expected 93066eee
- 请教ORACLE问题
- 招聘Oracle OTN技术论坛兼职管理人员
- 在XP下安装Oracle 9i,安装成功后,在应用程序与服务里怎么没有Lisenter的服务?
- 求一个sql语句
- 在Select一行的时候如果将行锁住不让别的事务读取这行!100分!
- 字符串的问题? 简单。。。
- 在Win2K Server安装Oracle817时,没有安装数据库,后在创建数据库时出现"ORA-12560:TNS:协议适配器错误"...
- Oracle 多个进程读记录并更新记录,怎么实现一个进程在操作(包括读),其他进程等待
- 刚开始用的安装问题(新手)
- 求助:关于表结构,存储过程和JAVA的导出导入问题
where a.person_id = b.person_id )
where a.person_id = b.person_id )
using b
on (a.person_id=b.person_id)
when matched then
update set a.person_name=b.person_name,a.cetf_id=b.cetf_id
when not matched then
insert (person_name,cetf_id) values (b.person_name,b.cetf_id);