开发者社区> 技术小美> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

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

本文转自 zhenjing 博客园博客,原文链接: http://www.cnblogs.com/zhenjing/archive/2011/03/11/1981115.html  ,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
sqlServer存储过程
1、创建存储过程报错:     'CREATE/ALTER PROCEDURE' 必须是查询批次中的第一个语句。 解决方法: use databaseName 后面要加上一句: GO ...
823 0
SQL Server基础之<存储过程>
原文:SQL Server基础之   简单来说,存储过程就是一条或者多条sql语句的集合,可视为批处理文件,但是其作用不仅限于批处理。本篇主要介绍变量的使用,存储过程和存储函数的创建,调用,查看,修改以及删除操作。
1469 0
SQLSERVER存储过程语法详解
SQL SERVER存储过程语法: Create PROC [ EDURE ] procedure_name [ ; number ]     [ { @parameter data_type }         [ VARYING ] [ = default ] [ OUTPUT ]     ] [ ,...n ]   [ WITH     { RECOMPILE | ENCRY
1658 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
时序数据库TSDB新功能 - 如何用SQL进行时序查询
立即下载
用SQL做数据分析
立即下载
SQL Server 2017
立即下载