资源描述:
《sql语句练习89092》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、sql语句练习89092createtablestudent(sidintAUTO_INCREMENTnotnull,snameVARCHAR(50),ssexVARCHAR(2),sageint,sgpVARCHAR(50),PRIMARYKEY(sid))CREATETABLEcourse(cidintAUTO_INCREMENTnotnull,cnameVARCHAR(50),PRIMARYKEY(cid))CREATETABLEsc(scidintAUTO_INCREMENTnotnull,sidintnotnull,cidintno
2、tnull,cjintnotnull,PRIMARYKEY(scid))#1)写一个SQL语句,查询选修了’计算机原理’的学生学号和姓名(3分钟)selectstu.sid,stu.snamefromStudentstu,coursec,scswherestu.sid=s.sidandc.cid=s.cidandc.cname='计算原理';#2)写一个SQL语句,查询’周星驰’同学选修了的课程名字(3分钟)SELECTcnamefromcoursewherecidin(SELECTcidfromscs,studentstuWHEREstu.
3、sid=s.sidandstu.sname='周星驰');#3)写一个SQL语句,查询选修了5门课程的学生学号和姓名(9分钟)selectstu.sid,stu.snamefromstudentstuwhere(selectcount(*)fromscwheresid=stu.sid)=5;#4)写出SQL语句,查询选修了所有选修课程的学生;selectstu.sid,stu.snamefromstudentstuwhere(selectcount(*)fromscwheresid=stu.sid)=(selectcount(*)fromco
4、urse);#5)写出SQL语句,查询选修了至少5门以上的课程的学生?selectstu.sid,stu.snamefromstudentstuwhere(selectcount(*)fromscwheresid=stu.sid)>=5;#6)查询选修课程的学生人数。SELECTcount(*)fromstudentstuWHEREEXISTS(SELECTcidfromscWHEREsid=stu.sid)#7)检索所学课程包含学生S6所学课程的学生学号。SELECTDISTINCTS#FROMSCASXWHERENOTEXISTS(SEL
5、ECT*FROMSCASYWHEREY.S#=′S6′ANDNOTEXISTS(SELECT*FROMSCASZWHEREZ.S#=X.S#ANDZ.C#=Y.C#))*8)查询参加了所有学科考试的前两名同学的平均成绩selectst.sname,avg(s.cj)as'平均成绩'fromstudentst,scswherest.sid=s.sidand(selectcount(*)fromscwheresid=st.sid)>=(selectcount(*)fromcourse)groupbyst.snameorderbyavg(s.cj)
6、desc--1、选择部门30中的雇员 select*fromempwheredeptno=30; --2、列出所有办事员的姓名、编号和部门 selectename,empno,dnamefromempeinnerjoindeptdone.deptno=d.deptnowherejob=upper('clerk’); --3、找出佣金高于薪金的雇员 select*fromempwherecomm>sal; --4、找出佣金高于薪金60%的雇员 select*fromempwherecomm>sal*0.6 --5、找出部门10中
7、所有经理和部门20中的所有办事员的详细资料 select*fromempwhere(deptno=10andjob=upper('manager'))or(deptno=20andjob=upper('clerk')); --6、找出部门10中所有经理、部门20中所有办事员,既不是经理又不是办事员但其薪金>=2000的所有雇员的详细资料 select*fromempwhere(deptno=10andjob=upper('manager'))or(deptno=20andjob=upper('clerk'))or(job<>upper(
8、‘manager’)andjob<>upper(‘clerk’)andsal>=2000) --7、找出收取佣金的雇员的不同工作 selectdistinctj