oracle: 数据操纵语言DML/批量更新
SQL(Structured Query Language,结构化查询语言)是一种用于管理和操作关系数据库的标准编程语言。
sql分类:
DML基本语法
DML是“Data Manipulation Language”的缩写, 即数据操纵语言
用于对数据库中的数据进行插入、更新、删除(即增删改)等操作
批量更新
目标表: 需要更新数据的表
源表: 包含用于更新目标表的新数据。源表可以是数据库中的另一个表,也可以是临时表、视图或子查询的结果集。
全删全插
删除目标表中的所有数据,然后重新插入新数据。这种方法适用于当新数据集与旧数据集没有交集或交集很小的情况。全删全插可以确保数据的一致性,但可能会暂时影响数据的可用性。使用TRUNCATE TABLE
语句可以快速删除表中的所有行,但不删除表本身
步骤: 清空目标表的数据>>从源表中把数据插入目标表
示例中, emp_b是目标表,emp是源表
增量更新/增量累全 merge into
只更新或插入变化的数据,而不是整个数据集。这种方法适用于当新数据集与旧数据集有较大交集或频繁更新的情况。增量更新可以减少数据传输量和处理时间,提高效率。
示例