首页
/
每日頭條
/
生活
/
mysql 删除表内容
mysql 删除表内容
更新时间:2024-10-05 01:09:58

歡迎來到MySQL實戰第45篇,修煉MySQL,不讓這一天又過去了。

mysql 删除表内容(單表删除你會了)1

在實際工作中,多表删除也是非常重要的,下面以編寫一個案例介紹并學習這個多表删除技術。

【表的構建】

create table grade

(

id bigint(20) not null auto_increment,

name varchar(8) not null,

primary key(id)

)engine=InnoDB auto_increment=4 default charset=utf8;

insert into grade values(1,"一年級");

INSERT INTO `grade` VALUES (2, '二年級');

INSERT INTO `grade` VALUES (3, '三年級');

mysql 删除表内容(單表删除你會了)2

cREATE TABLE `student` (

`id` bigint(20) NOT NULL AUTO_INCREMENT,

`grade_id` bigint(20) NOT NULL COMMENT '年紀id',

`name` varchar(8) DEFAULT NULL,

`sex` tinyint(2) DEFAULT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

INSERT INTO `student` VALUES (1, 1, '張三', 1);

INSERT INTO `student` VALUES (2, 2, '李四', 2);

mysql 删除表内容(單表删除你會了)3

【多表删除的案例學習】

1.把表student中哪些grade_id值在grade表裡匹配的記錄全部删除。

<1>delete student from student,grade where student.grade_id=grade.id;

mysql 删除表内容(單表删除你會了)4

<2>delete from student using student,grade where student.grade_id=grade.id;

mysql 删除表内容(單表删除你會了)5

2.删除所有沒有在grade表中有年紀記錄的學生

<1>delete student from student left join grade on student.grade_id=grade.id where grade.id is null;

mysql 删除表内容(單表删除你會了)6

mysql 删除表内容(單表删除你會了)7

<2>delete from student using student left join grade on grade.id=student.grade_id where grade.id is null;

mysql 删除表内容(單表删除你會了)8

mysql 删除表内容(單表删除你會了)9

【總結性學習】

1.删除表的用法辨析

<1>drop table 表名; drop将表格直接删除,沒有辦法找回

<2>truncate(table) 表名; truncate 删除表中的所有數據,不能與where一起使用

<3>delete from 表名(where條件); delete 删除表中的數據。

2.truncate 和delete的區别

<1>事務:truncate 是不可以rollback的,但是delete是可以rollback的;

原因:trunctate删除整表數據,delete是一行一行的删除,可以rollback

<2>效果:truncate删除後将重新水平線和索引(id從零開始),delete不會删除索引。

<3>truncate不能觸發delete觸發器。

<4>delete删除可以返回行數。

mysql 删除表内容(單表删除你會了)10

關注财務總監的數據分析,一起修煉MySQL,500篇能掌握它。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
小兔子吃什麼食物
小兔子吃什麼食物
小兔子吃什麼食物?兔子主要吃兔糧,還可以吃青草但是兔子要嚴格控制它們的食物,否則它們很有可能吃食過多導緻死亡,接下來我們就來聊聊關于小兔子吃什麼食物?以下内容大家不妨參考一二希望能幫到您!小兔子吃什麼食物兔子主要吃兔糧,還可以吃青草。但是兔...
2024-10-05
手抖多年是什麼操作
手抖多年是什麼操作
手抖最常發生在老人身上,也有一些年輕人也時常會手抖。為什麼會手抖呢?主要原因是體内缺乏礦物質鎂和鈣,當然,如果有酗酒的毛病,也會導緻手抖。1.缺乏礦物質鎂和鈣、酗酒手抖的原因主要是體内缺乏礦物質鎂和鈣,一些年輕人嗜酒如命,體内礦物質和維生素...
2024-10-05
金銀重返高位
金銀重返高位
所謂金銀比,是指一盎司黃金與一盎司白銀價格之間的比率,金銀比達到峰值往往标志着美國經濟衰退的結束。美國于1990年進入衰退期,到1991年3月持續了8個月,在1993年衰退結束之時,金銀比超100:1。2019年疫情期間金銀比例為80:1,...
2024-10-05
習語妙典孟夏之日
習語妙典孟夏之日
編者按:黨的十八大以來,在一系列重要講話和文章中,大量引用中國古代經典名句,為中國政壇帶來習習清風。無論是談論治國理政的重大問題,還是在國際場合闡述中國主張,都善于從諸子百家和曆代文人、政治家的經典名句中旁征博引,恰到好處地表達中國共産黨人...
2024-10-05
廣州白雲機場最新通知國際航班
廣州白雲機場最新通知國際航班
廣州白雲國際機場5月13日通報,目前廣州白雲國際機場已實現常态化運行,當日機場計劃起降航班300架次,總體運行平穩有序。中國南方航空13日也大幅恢複在穗國内航班,當天計劃在廣州白雲國際機場保障國内進出港航班61班次。旅客在辦理值機。(白雲機...
2024-10-05
Copyright 2023-2024 - www.tftnews.com All Rights Reserved