本文旨在列举常见关系型数据库的update操作的SQL语句的区别
Oracle
单表更新
-- 方式1 UPDATE表SET字段1=值1,字段2=值2[WHERE条件]-- 限定更新范围 -- 方式2 UPDATE表SET(字段1,字段2)=(值1,值2)[WHERE条件]-- 限定更新范围
多表关联更新
UPDATE表1aSET(字段1,字段2)=-- 从关联表取关联关系的记录的值 (SELECT字段3,字段4FROM表2bWHEREa.字段5=b.字段6)[WHERE条件]-- 限定更新范围
MySQL
单表更新
UPDATE表SET字段1=值1,字段2=值2[WHERE条件]-- 限定更新范围
多表关联更新
UPDATE表1a[LEFT/RIGHT/FULL]JOIN表/视图/子查询bONa.字段1=b.字段2-- 关联表及关联关系 SETa.字段3=值1,b.字段4=值2-- 其中b必须为可更新的状态 [WHERE条件]-- 限定更新范围
编辑于 05-23