把整个Mysql拆分成21天,轻松掌握,搞定(下)

2020-05-03 21:04:00
IDO老徐
原创
29463

第17天作业 ,





-- 1)修改表idoxu,把字段istester ,改为istester6(字符类型varchar,长度160 )


-- 2)检查是否修改成功


-- 3)把idoxu表,改名为 idoxu6


-- 4)检查是否修改成功




前一天作业答案参考 ,


造数据 ,把istester表的所有数据,插入到 idoxu表

字段关系

id 取id

stu_id 取id

c_name 取 uname

istester 和 grade字段,给默认值 60


insert into idoxu(id,stu_id,c_name,istester,grade) select id,id,uname,60,60 from istester ;





/


第18天作业 ,



1)创建数据库 istesterdb6


2)检查数据库是否创建成功 ;


3)进入istesterdb6 库


4)在数据库 istesterdb6 ,创建idoxu表,直接拷贝 istester库idoxu6表的数据和结构 ;


5)检查表是否创建成功 ;




前一天作业答案参考 ,



-- 1)修改表idoxu,把字段istester ,改为istester6(字符类型varchar,长度160 )

alter table idoxu CHANGE istester istester6 varchar(160);


-- 2)检查是否修改成功

desc idoxu;


-- 3)把idoxu表,改名为 idoxu6

-- ALTER TABLE 旧表名 RENAME TO 新表名 ;

ALTER TABLE idoxu RENAME TO idoxu681 ;


-- 4)检查是否修改成功

show tables;





/


第19天作业 ,


idoxu表,分数grade

1)排名前三的学生 和分数 ;

2)排名3 - 6名的学生 和分数 ;

3)排名6名以后的所有学生  和分数 ;



前一天作业答案参考 ,


1)创建数据库 istesterdb6

create database istesterdb6 ;


2)检查数据库是否创建成功 ;

show databases ;


3)进入istesterdb6 库

use istesterdb6 ;


4)在数据库 istesterdb6 ,创建idoxu表,直接拷贝 istester库idoxu6表的数据和结构 ;

create table istesterdb6.idoxu as SELECT * from istester.idoxu6;

或

create table idoxu as SELECT * from istester.idoxu6;


5)检查表是否创建成功 ;

show tables;




/


第20天作业 ,


多表(左链接、右链接、内链接)


表 idoxu6 和 表istester




前一天作业答案参考 ,


-- 1)排名前三的学生 和分数 ; 

SELECT c_name,grade FROM idoxu ORDER BY grade DESC LIMIT 3; 


-- 2)排名3 - 6名的学生 和分数 ; 

SELECT c_name,grade FROM idoxu ORDER BY grade DESC LIMIT 2,4; 


-- 3)排名6名以后的所有学生 和分数 ; 

SELECT c_name,grade FROM idoxu ORDER BY grade DESC LIMIT 5,666;


注:这题目的是limit的用法,很多同学写的太复杂 ;


limit是mysql的语法

select * from table limit m,n

其中m是指记录开始的index,从0开始,表示第一条记录

n是指从第m+1条开始,取n条。

select * from tablename limit 2,4

即取出第3条至第6条,4条记录





/


第21天作业(最后1天,结业) ,


1)把表idoxu6,改完idoxu

2)删除库 istesterdb6

3)删除istester表

4)清空idoxu表的数据



End ,一切恢复如初,坐等SQL第2期 ;



前一天作业答案参考 ,


注:主要目的是熟悉这三种玩法,以及观察结果差异 ;


#左连接 

SELECT * from idoxu6 a LEFT JOIN istester b on a.stu_id=b.id; 


#内连接 

SELECT * from idoxu6 a INNER JOIN istester b on a.stu_id=b.id; 


#右连接 

SELECT * from idoxu6 a RIGHT JOIN istester b on a.stu_id=b.id;




/


结业,最后一天作业答案参考



1)把表idoxu6,改名为idoxu 

rename table idoxu6 to idoxu; 

或

alter table idoxu6 rename idoxu; 


2)删除库 istesterdb6 

drop database istesterdb6; 


3)删除istester表 

drop table istester; 


4)清空idoxu表的数据 

truncate table idoxu; 

或

delete from idoxu;



End ,恭喜结业 ;

循环3次21天打卡,总共63天(两个月掌握软测必备的SQL日常使用)

文章底部-一句话推荐

01 AI编程商业化所有问题点这(看完,解疑惑)

02 AI编程商业化(普通人的案例)

注:如果看完文章,还有不清晰的,可联系 IDO老徐 ,描述你遇到的具体问题,会解答( 微信 957863300 ) 

本站申明

1. 所有文章,均为 IDO老徐 原创(免费学习,欢迎转发,转载注明来源),博客地址 idoxu.com

2. 内容很多,慢慢看。看完文章还有不明白的,微信联系 IDO老徐

3. 欢迎关注 公众号、免费领取 「十年原创资料包」 、进「万人免费成长社群」

写作星球new

成长,写作,副业,赚钱社群

写作·成长·副业赚钱,万人免费社群

365 * 24 随时向 IDO老徐 免费提问

完整的 14 个社群入口,点这里


老徐陪你副业避坑

老徐陪你副业避坑

100 个实战小项目,少亏钱,多赚钱

送《一人企业复利商业化》实体书(包邮)

365 * 24 随时向 IDO老徐 免费提问

微信 957863300


个人IP(副业)
小红书高频问题
公众号-IDO老徐


IDO老徐

全网同名,个人IP公众号

日更10年,每天 1 分钟、解决 1 个问题

职场、副业、轻创业、写作、个人IP

公众号、视频号、小红书、知乎

简尚公众号

长按/扫码,关注IDO老徐

关注回复 401 送你「十年原创资料包」


联系老徐
联系人: IDO老徐
Email: 957863300@qq.com
QQ: 957863300
微信: 957863300
微博: isTester
网址: idoxu.com
地址: 中国 · 广东 · 深圳
轻创业
个人微信

IDO老徐 个人微信

来源备注:老徐博客