SQL批量删除与批量插入

批量删除:

DELETE FROM MyTable WHERE ID IN (1,2);

批量插入:

INSERT INTO MyTable(ID,NAME) VALUES(1,‘123‘);
INSERT INTO MyTable(ID,NAME) VALUES(2,‘456‘);
INSERT INTO MyTable(ID,NAME) VALUES(3,‘789‘);

第二种方法,使用UNION ALL来进行插入操作:    
INSERT INTO MyTable(ID,NAME)
SELECT 4,‘000‘
UNION ALL
SELECT 5,‘001‘
UNION ALL
SELECT 6,‘002‘ ;
据说要比第一种要快!

第三种方法  
INSERT INTO MyTable(ID,NAME) VALUES(7,‘003‘),(8,‘004‘),(9,‘005‘);

Example:

表: leafjob(
leafnum INT NOT NULL PRIMARY KEY,
machine VARCHAR(15) );

删除:delete from leafjob where leafnum in (1,2,4);

插入:

INSERT INTO leafjob (leafnum, machine) values(1, ‘r1leaf3‘), (2, ‘r1leaf22‘);

insert into leafjob(leafnum, machine) select 4,‘000‘ union all select 1,‘r1leaf3‘ union all select 2,‘r1leaf22‘;

insert into leafjob(leafnum, machine) select 1,‘r1leaf3‘ union select 2,‘r1leaf22‘;

注:性能问题需要具体测试。示例在MySql下测试过,version: 4.1.20

时间: 2024-08-29 16:49:25

SQL批量删除与批量插入的相关文章

LINQ To SQL在N层应用程序中的CUD操作、批量删除、批量更新

原文:LINQ To SQL在N层应用程序中的CUD操作.批量删除.批量更新 0. 说明 Linq to Sql,以下简称L2S.    以下文中所指的两层和三层结构,分别如下图所示: 准确的说,这里的分层并不是特别明确:(1) 生成的DataContext(Linq t0 SQL Runtime)和Entity是放在一个文件中的,物理上不能切割开来:上图只是展示逻辑上的结构.(2) 拿上图右边的三层结构来说,鉴于第(1)点,UI层就可以跨越BusinessLogic层,直接访问L2S层,这可能

jdbc-批量插入、批量删除、批量更新

一.JDBC的批量插入 JDBC批量插入主要用于数据导入和日志记录因为日志一般都是先写在文件下的等.    我用Mysql5.1.5的JDBC driver 分别对三种比较常用的方法做了测试   方法一,使用PreparedStatement加批量的方法   Java代码       try{ Class.forName("com.MySQL.jdbc.Driver"); conn = DriverManager.getConnection(o_url, userName,passwo

Mybatis 批量删除 或者批量查询等等

1.第一种方法:传过来的参数是数组,通过foreach来差实现批量删除 2.第二种:直接传一个1,2,3,4这样的数组过来就可以了 原文地址:https://www.cnblogs.com/wcyer/p/12536484.html

bos 第3天(easyui弹窗边界问题、取派员的添加、修改和批量删除)

BOS项目笔记 第3天 今天内容安排: 1.解决window窗口bug 2.bos项目整体需求分析(基础设置.取派.中转.路由.报表) 3.取派员添加功能 4.jQuery easyUI控件datagrid使用方式 5.基于datagrid实现取派员分页查询 6.取派员批量删除和修改 1. 修复window控件bug 将上面的js文件引入jsp页面中 2. 基础设置部分需求分析 整个基础设置部分对应需求文档2.6章节. 2.1 基础档案设置 在其他的系统中通常称为"数据字典".提供基础

批量删除redis数据库中的key

在redis数据库中,如果大量以某些字段开头或结尾的key,一般都会用到命令keys进行模糊匹配.但是当我们想删除批量指定的keys,却犯愁了,因为redis没有提供相关的命令.那我们怎么操作能实现预期的效果呢? (1) 删除单个key 127.0.0.1:6379> del key 如果知道有限多个key的名字,以下操作也可以实现批量操作 127.0.0.1:6379> del key1 key2 key3 .... 当key的数量达到一定数量时,这个方法明显时不现实的. 注意:redis命

【EasyUi DataGrid】批量删除

DataGrid是我们做网页经常使用到的组件之中的一个,对它的操作也无非是增删改查操作.单条数据的增删改相对来说比較简单.添加.改动能够直接在DataGrid中进行,也能够用弹出框的形式把数据装载在文本框等各种控件中呈现给用户,让用户自己主动填写或改动.删除的事稍后再说.个人觉得"查"是最难的.由于它涉及到了表格的各种载入问题等等.假设你觉得这是危言耸听.那就我的期待兴许博客吧! 不知道上边在说什么的能够忽略不计.接下来进行正文部分.这次的DataGrid分三部分来写:批量删除.批量改

docker 批量删除 镜像 容器

我们在docker构建和测试时,经常会产生很多无用的镜像或者容器,我们可用如下两条命令一个一个删除. docker container rm 容器id #删除容器 docker image rm 镜像ID #删除镜像 但是,还可以借助这两个获取容器ID和镜像ID的命令实现批量删除 获取容器ID列表: docker container ls -a -q 获取镜像ID列表: docker image ls -a -q 最终实现批量删除命令 批量删除容器: docker container rm $(

sql server中的大数据的批量操作(批量插入,批量删除)

首先我们建立一个测试用员工表 ---创建一个测试的员工表--- create table Employee( EmployeeNo int primary key, --员工编号 EmployeeName nvarchar(50) null, --员工名称 CreateUser nvarchar(50) null, --创建人 CreateDate datetime null, --创建时间 ) 执行后结果: 那么假如我们要批量插入10000条数据,应该怎么办? 这里有四种方法(普通循环,事务循

sql Server如何执行批量插入和批量删除

平时我们sql server执行查询语句都是通过 insert into 表名(字段名,字段名) values(插入值,插入值) --单条插入语句--- insert into Reader(readerName) values('测试') 那如何进行批量插入呢?除了多条insert 语句组合而成,还有其他吗? --Sql Server 的批量添加--- --方式1:多条insert语句插入---- insert into Reader(readerName) values('读者1'); in