oracle: 数据操纵语言DML/批量更新

SQL(Structured Query Language,结构化查询语言)是一种用于管理和操作关系数据库的标准编程语言。

sql分类:

DML基本语法

DML是"Data Manipulation Language"的缩写, 即数据操纵语言

用于对数据库中的数据进行插入、更新、删除(即增删改)等操作

批量更新

目标表: 需要更新数据的表

源表: 包含用于更新目标表的新数据。源表可以是数据库中的另一个表,也可以是临时表、视图或子查询的结果集。

全删全插

删除目标表中的所有数据,然后重新插入新数据 。这种方法适用于当新数据集与旧数据集没有交集或交集很小 的情况。全删全插可以确保数据的一致性,但可能会暂时影响数据的可用性。使用TRUNCATE TABLE语句可以快速删除表中的所有行,但不删除表本身

步骤: 清空目标表的数据>>从源表中把数据插入目标表

示例中, emp_b是目标表,emp是源表

增量更新/增量累全 merge into

只更新或插入变化的数据,而不是整个数据集 。这种方法适用于当新数据集与旧数据集有较大交集或频繁更新的情况。增量更新可以减少数据传输量和处理时间,提高效率。

示例

相关推荐
陈天伟教授3 小时前
人工智能训练师认证教程(2)Python os入门教程
前端·数据库·python
火星资讯3 小时前
Zenlayer AI Gateway 登陆 Dify 市场,轻装上阵搭建 AI Agent
大数据·人工智能
星海拾遗4 小时前
git rebase记录
大数据·git·elasticsearch
Elastic 中国社区官方博客4 小时前
Elasticsearch:在分析过程中对数字进行标准化
大数据·数据库·elasticsearch·搜索引擎·全文检索
聪明努力的积极向上4 小时前
【MYSQL】字符串拼接和参数化sql语句区别
数据库·sql·mysql
代码or搬砖4 小时前
RBAC(权限认证)小例子
java·数据库·spring boot
神仙别闹4 小时前
基于QT(C++)实现学本科教务系统(URP系统)
数据库·c++·qt
2301_768350234 小时前
MySQL为什么选择InnoDB作为存储引擎
java·数据库·mysql
上海蓝色星球4 小时前
迈向智慧电网新纪元:上海蓝色星球数字孪生变电主子站系统
运维·数据库
是大芒果4 小时前
数据库表设计
数据库