oracle联合查询并更新一个表字段的sql语句

Posted 1501220038

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle联合查询并更新一个表字段的sql语句相关的知识,希望对你有一定的参考价值。

更新某一个字段写起来简单,也容易理解:

UPDATE tablea A SET A.name=(select name from tableb B where A.id=B.id)

更新多个字段就显得比较冗长:

UPDATE tablea A SET A.name=(select name from tableb B where A.id=B.id),A.age=(select age from tableb B where A.id=B.id)

如果需要更新的字段太多,这样写就太乱了,而且重复查询效率也大打折扣,可以改用这样的写法:

MERGE INTO tablea A USING tableb B ON ( A.id = B.id ) WHEN MATCHED THEN UPDATE SET A.name=B.name,A.age=B.age,A.title=B.title

以上是关于oracle联合查询并更新一个表字段的sql语句的主要内容,如果未能解决你的问题,请参考以下文章

oracle 有记录就更新没有添加问题

mysql 多表联合查询语句怎么写

SQL中如何遍历表并更新某个字段的值

两个表之间关联更新字段

Oracle环境,求一个sql语句,如何查询某字段(bz)中包含三个英文字母的连写记录?

oracle 查询字段值重复sql语句