2020.03.17 sql语句练习题2.0

-- 11
-- select avg(degree) from school.scores where cno='3-105';
-- 12
-- select avg(degree) from school.scores where cno like '3%' group by cno having count(*)>=5;
-- 13
-- select sno from school.scores where degree between 70 and 90;
-- 14
-- select sname,cno,degree from school.students a join school.scores b on a.sno=b.sno;
-- 15
-- SELECT a.sno,c.cname,b.degree FROM school.students a join school.scores b on a.sno=b.sno join school.courses c on b.cno=c.cno;
-- 16
-- select a.sno,b.cname,c.degree from school.students a,school.courses b,school.scores c where a.sno=c.sno and b.cno=c.cno;
-- 17
-- select stu.sname,cou.cname,sco.degree from school.students stu join school.scores sco on stu.sno=sco.sno join school.courses cou on sco.cno=cou.cno;
-- 18
-- select avg(degree) as '95033班的平均分' from school.students stu join school.scores sco on stu.sno=sco.sno where stu.class='95033';

-- CREATE TABLE grade(low DOUBLE,upp DOUBLE,rank CHAR(1));
-- INSERT INTO grade VALUES(90,100,'A');
-- INSERT INTO grade VALUES(80,89,'B');
-- INSERT INTO grade VALUES(70,79,'C');
-- INSERT INTO grade VALUES(60,69,'D');
-- INSERT INTO grade VALUES(0,59,'E');

-- select sno,cno,rank from school.scores sco join school.grade gra on sco.degree between gra.low and gra.upp;
-- 19
-- select sco.sno,sco.cno,sco.degree from school.scores sco,(select * from school.scores WHERE sno='109' and cno='3-105') tem where sco.cno='3-105' and sco.degree>tem.degree;
-- 20
-- select sco.* from school.scores sco,(SELECT sno,MAX(degree) max_degree FROM school.scores GROUP BY sno HAVING COUNT(sno)>1) md where sco.sno=md.sno and sco.degree<md.max_degree;
-- 21
-- select sco.* from school.scores sco join (select * from school.scores where cno='3-105'and sno='109') ssc on sco.degree>ssc.degree;
-- 22
-- select stu.sno,stu.sname,stu.sbirthday from school.students stu join (SELECT sno,DATE_FORMAT(sbirthday,'%Y') nb FROM school.students) quan on stu.sno=quan.sno join (SELECT sno,DATE_FORMAT(sbirthday,'%Y') nb FROM school.students WHERE sno='108') q108 on quan.nb=q108.nb;
-- 23
-- select stu.sname,sco.degree from school.courses cou join school.scores sco on sco.cno=cou.cno join school.teachers tea on cou.tno=tea.tno join school.students stu on stu.sno=sco.sno where tea.tname='张旭';
-- 24
-- select tea.tname from school.courses cou join (select * from school.scores group by cno having count(*)>=5) sco on cou.cno=sco.cno join school.teachers tea on cou.tno=tea.tno;
-- 25
-- select * from school.scores sco join ( select * from school.students where class in('95033','95031')) stu on sco.sno=stu.sno;
-- 26
-- select cno from school.scores where degree>85;
-- 27
-- select sco.* from school.scores sco join school.courses cou on sco.cno=cou.cno join (SELECT * FROM school.teachers WHERE depart='计算机系') tea on cou.tno=tea.tno;
-- 28
-- select tname,prof from school.teachers where depart in('计算机系','电子工程系');
-- 29
-- select sco2.* from (select * from school.scores where cno='3-245') sco join (select * from school.scores where cno='3-105') sco2 on sco.sno=sco2.sno and sco2.degree>sco.degree order by degree;
-- 30
-- select sco2.* from school.scores sco join (select * from school.scores where cno='3-105') sco2 on sco.sno=sco2.sno and sco2.degree>sco.degree;
-- 31
-- select sname as name,ssex as sex,sbirthday as birthday from school.students union select tname,tsex,tbirthday from school.teachers;
-- 32
-- select sname as name,ssex as sex,sbirthday as birthday from school.students where ssex='女' union select tname,tsex,tbirthday from school.teachers where tsex='女';
-- 33
-- select sco.* from school.scores sco join (select cno,avg(degree) degree from school.scores group by cno) msco on sco.cno=msco.cno and sco.degree<msco.degree;
-- 34
-- select tname,depart from school.teachers;
-- 35
-- select tname,depart from school.teachers where tno not in (select tno from school.courses);
-- 36
-- select class from school.students group by class having count(ssex='男')>=2;
-- 37
-- select * from school.students where not (sname like '王%');
-- 38
-- select sname,2020-date_format(sbirthday,'%Y') as age from school.students;
-- 39
-- select max(sbirthday) maxb,min(sbirthday) from school.students;
-- 40
-- select *,2020-date_format(sbirthday,'%Y') as age from school.students order by class desc,age desc;
-- 41
-- select * from school.courses cou join (select * from school.teachers where tsex='男') tea on cou.tno=tea.tno;
-- 42
-- select sco.* from school.scores sco join (select max(degree) as md from school.scores) msco on sco.degree=msco.md;
-- 43
-- select stu.* from school.students stu join (select * from school.students where sname='李军') li on stu.ssex=li.ssex;
-- 44
-- select stu.* from school.students stu join (select * from school.students where sname='李军') li on stu.ssex=li.ssex and stu.class=li.class;
-- 45
-- select stu.*,sss.cno,sss.degree from school.students stu join (select sco.* from school.scores sco join
-- (select * from school.courses where cname='计算机导论') cou on sco.cno=cou.cno) sss on stu.sno=sss.sno where stu.ssex='男';

猜你喜欢

转载自www.cnblogs.com/aojie/p/12513144.html