删除数据高级用法:delete,truncate
1、语法:
delete 允许使用条件(删除符合条件的数据)
允许使用limit,限制删除的记录数。limit N
常见的是,limit配合order by来使用:先将结果排序,再删除固定数量的记录,如果只有order by的删除操作是没有意义的。
例子:delete from teacher order by days desc limit 10;
解析:将teacher表中的days字段按照降序排序,取前10条删除。
2、连接删除:
允许使用类似的join语法,同时删除多个表内的记录。需要先提供表名,再提供连接条件。
可以拆分成理解为:先delete join_teacher,再delete join_teacher_class
例子:
delete from join_teacher,join_teacher_class
using join_teacher_class join join_teacher on
join_teacher_class.t_id=join_teacher.id
where join_teacher.id=1;
删除前:


命令:delete from join_teacher,join_teacher_class
using join_teacher_class join join_teacher on
join_teacher_class.t_id=join_teacher.id
where join_teacher.id=1;
删除后:


3、清空表操作:
truncate,类似:delete from table_name;
truncate要点: 1)不会返回删除的记录数;
2)重建自动增长的主键 ;
3)删除表,再新建表。
例子:truncate b_table; #系统提示删除了24条记录。
insert into b_table values (null,'hoho','会计'); #此时由于truncate命令的特性,不会保留删除的记录数,所以默认从a_id=1开始。

delete要点:1)逐行删除 ;
2)会保留增长的主键记录。
例子:delete from a_table; #系统提示删除了24条记录。
insert into a_table values (null,'haha','会计'); #此时由于delete命令的特性,会保留删除的记录数,所以默认从a_id=25开始。

删除数据高级用法:delete,truncate的更多相关文章
- SQL server 存储过程 C#调用Windows CMD命令并返回输出结果 Mysql删除重复数据保留最小的id C# 取字符串中间文本 取字符串左边 取字符串右边 C# JSON格式数据高级用法
create proc insertLog@Title nvarchar(50),@Contents nvarchar(max),@UserId int,@CreateTime datetimeasi ...
- mysql 在删除数据出现Cannot delete or update a parent row: a foreign key constraint fails 这个该如何解决
mysql 在删除数据出现Cannot delete or update a parent row: a foreign key constraint fails 这个该如何解决 可以这样解决: S ...
- mysql----快速删除数据表(drop,truncate.delete)
概念: 三者均可删除数据表 TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行.但 TRUNCATE TABLE 比 DELETE 速度快 ...
- elasticsearch 2.4在head删除数据(使用Delete By Query插件)
之所以说明是2.4版,是因为不同版本删除的语法不一样(例如跟5.x就不同) 首先安装Delete By Query插件,方式跟安装head插件差不多,安装命令:plugin install delet ...
- C# JSON格式数据高级用法
JSON简介 JSON(全称为JavaScript ObjectNotation) 是一种轻量级的数据交换格式.它是基于JavaScript语法标准的一个子集.JSON采用完全独立于语言的文本格式, ...
- 什么?还在用delete删除数据《死磕MySQL系列 九》
系列文章 五.如何选择普通索引和唯一索引<死磕MySQL系列 五> 六.五分钟,让你明白MySQL是怎么选择索引<死磕MySQL系列 六> 七.字符串可以这样加索引,你知吗?& ...
- MySQL数据库5 - 插入数据,修改数据,删除数据
一.插入数据 1. 所有列都插入值 INSERT [INTO] TABLE_NAME VALUES(V1,V2....Vn); 特点:列值同数,列值同序 eg: insert into users v ...
- 6-05使用SQL语句删除数据
删除数据语法: DELETE FROM 表名 WHERE 删除条件. TRUNCATE TABLE 表名. --[1]基本删除,省略WHERE条件,将删除表中的所有数据 DELETE FROM ...
- MVC3.0删除数据的时候给提示信息
Index.cshtml代码: @model IEnumerable<FirstMvc.Models.Book> <script type="text/javascript ...
随机推荐
- jmeter请求报错
jmeter发送json数据,报405.400错误解决方案: https://www.cnblogs.com/sunny-sl/p/8044284.html 405:Content-Type不对 40 ...
- opencv3.2.0+opencv_contrib-3.2.0+vs2015开发配置
在sift算法实现中,出现了这个问题 出现问题:\vs2015opencv\vs2015\project\mode\mode\sift算法1.cpp(3): fatal error C1083: 无法 ...
- 实例:通过调用外部程序进行录制视频(ffmpeg.exe)
相关知识点: 1. ffmpeg可以用下面的参数来录制Windows 桌面操作的视频. ffmpeg.exe -y -rtbufsize 100M -f gdigrab -framerate 10 - ...
- SPDK-nvmf与不同传输类型的公共接口
SPDK-nvmf与不同传输类型的公共接口 不同类型的传输层到nvmf的公共命令请求接口 nvmf_fc_hwqp_handle_request() -->cmd_iu = buffer-> ...
- 粗略写了使用GD2制作文字图像demo
项目要求宽,高为传入参数:文字大小,文字间隔需要自动调节: 由于imagettftext()函数写入文字坐标点不以画布左上角为原点,而是根据文字的字体类型,字体大小,中英文,标点等因素变换(测试多组数 ...
- SQLserver各种时间取值格式
叫大哥 SQLServer提取日期中的年月日及其他格式 SQLServer提取日期中的年月日及其他格式 提取年:datepart(yy,getdate())提取月:datepart(mm,getd ...
- C++——程序的结构
1.作用域和可见性 1.1 函数原型中的参数其作用域仅在()内.因此参数名称可有可无,但是参数类型需要声明. 1.2 块作用域 在块中声明的标识符其作用域自声明处起,限于块中. 1.3 类作用域 类作 ...
- Itext相关知识
最近需求用到office和pdf相关知识,office使用poi操作的,pdf则使用Itext操作 Itext官网: http://itextpdf.com/ Itext7相关使用示例:https:/ ...
- 配置数据库属性validationQuery
配置数据库时,属性validationQuery默认值为“select 1”,对于oracle值应为“select 1 from dual” validationQuery属性:用来验证数据库连接的语 ...
- css美化Div边框的样式实例*(转载)
css美化Div边框的样式实例 很多时候如果不是用了很多样式,很难把边框修饰得好看,看了一篇博文,觉得真的挺漂亮,也挺好看. 转载的博文地址 将这段美化的css代码 border:1px soli ...