在工作中经常遇到某种数据处理的场景:
A表与B表存储着相同的字段,需要将B表中某列数据对应地更新到A表中
可以用代码实现,遍历匹配即可~~(好像没有啥是代码解决不了的哈哈)~~,但是数据库的解决方法会更加高效,但实操起来mysql 与 oracle 略有不同,在此特地记录学习。
MySQL :
MySQL对此的操作较为简单直接:
-
T1表:
-
T2表:
现需要将T2表中的value值根据tname更新到t1表中,执行语句:
UPDATE T1
JOIN T2 ON t1.TNAME = t2.TNAME
SET t1.TVALUE = t2.TVALUE
[SQL]UPDATE T1
JOIN T2 ON t1.TNAME = t2.TNAME
SET t1.TVALUE = t2.TVALUE
受影响的行: 2
时间: 0.003s
ORACLE :
ORACLE的操作将会与MySQL有那么点不一样
表格:同样为T1,T2
假如直接用mysql的更新语句,则会报错:
-
方法一:使用update常规更新
-
常见陷阱:
UPDATE T1 SET T1.TVALUE = (SELECT T2.TVALUE FROM T2 WHERE T2.TNAM
-