diff --git "a/01 \350\213\217\346\270\205\345\215\216/20230316\345\260\217\347\273\204\344\275\234\344\270\232.md" "b/01 \350\213\217\346\270\205\345\215\216/20230316\345\260\217\347\273\204\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..80fb330f368a0c2a0f9dc2da824dfc717a3ae0b0 --- /dev/null +++ "b/01 \350\213\217\346\270\205\345\215\216/20230316\345\260\217\347\273\204\344\275\234\344\270\232.md" @@ -0,0 +1,146 @@ +# 作业 + +```mysql +## 建库建表添加数据 +create database wugui charset utf8; +use wugui; + +create table wuguiinfo ( +wuguino int primary key , +wuguiname varchar(20) not null, +wuguisex char(5) not null, +wuguiaddress varchar(20), +wuguiprice varchar(100)); + +create table wuguilevel ( +wuguino int primary key , +wuguirank varchar(10) not null, +wuguiweight varchar(100)); + +create table wuguitypee ( +wuguitype varchar(20) , +wuguino int not null primary key, +foreign key(wuguino) REFERENCES wuguiinfo(wuguino)); + +insert into wuguiinfo VALUES +(1,'周富','母','下水道',1), +(2,'赵敏大美女','公','皇宫',2500000), +(3,'杨梅小公主','母','温州',2500000), +(4,'乌龟大王谢铖浩','男','东海龟宫',1000000000), +(5,'方增兴','公','数据库',250), +(6,'林俊伟','公','花果山',251); + +insert into wuguilevel VALUES +(1,'低级',250), +(2,'至尊级',2500), +(3,'高级',500), +(4,'玄武级',60000), +(5,'高级',666), +(6,'高级',500); + +insert into wuguitypee values +('双面龟',1), +('巴西龟',2), +('蛋龟',3), +('玄武',4), +('巴西龟',5), +('陆龟',6); +``` + +-- 1.查询出性别为母的乌龟 + +```mysql +select * from wuguiinfo where wuguisex='母'; +``` + +--2.查询性别为公的乌龟 + +```mysql +select * from wuguiinfo where wuguisex='公'; +``` + +-- 3.查询出每个乌龟的编号,姓名,性别,住址,价格 + +```mysql +select wuguino,wuguiname,wuguisex,wuguiaddress,wuguiprice from wuguiinfo; +``` + +-- 4.查询价格大于20000以上的乌龟信息 + +```mysql +select * from wuguiinfo where wuguiprice>20000; +``` + +-- 5.查询出价格低于200的乌龟信息 + +```mysql +select * from wuguiinfo where wuguiprice<200; +``` + +-- 6.查询不属于公母性别的乌龟 + +```mysql +select * from wuguiinfo where wuguisex not in ('公','母'); +``` + +-- 7.查询每个乌龟对应的等级 + +```mysql +select wuguiinfo.wuguino,wuguiname,wuguirank from wuguiinfo left join wuguilevel on wuguiinfo.wuguino=wuguilevel.wuguino; +``` + + +-- 8.查询出品种相同的乌龟 + +```mysql +``` + + + +-- 9.查询字段wuguiName里面有大的名字 + +```mysql +select wuguiname from wuguiinfo where wuguiname like '%大%'; +``` + + +-- 10.按乌龟的价格进行降序 + +```mysql +select * from wuguiinfo order by wuguiprice desc; +``` + + + +-- 11将乌龟的品种进行去重 + +```mysql +SELECT + distinct wuguitype +FROM + wuguiinfo info + RIGHT JOIN wuguitypee typ ON info.wuguino = typ.wuguino + where info.wuguino; +``` + + +-- 12.将rank里面的体重求平均值 + +```mysql +select avg(wuguiweight) from wuguilevel; +``` + + +-- 13.将info和rank表连接,然后按照rank的体重进行降序,在获取表内的前3行记录 + +```mysql +select info.*,wuguiweight from wuguiinfo info left join wuguilevel lev on info.wuguino=lev.wuguino order by wuguiweight desc limit 0,3; +``` + + +-- 14.在13的基础上获取里面乌龟价格最高的数据 + +```mysql +select max(wuguiprice) from (select info.*,wuguiweight from wuguiinfo info left join wuguilevel lev on info.wuguino=lev.wuguino order by wuguiweight desc limit 0,3) as temp ; +``` +