资源描述:
《SQL查询语句学习笔记》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、SQL查询语句学习笔记问题描述:为管理岗位业务培训信息,建立3个表:S(SID,SNAME,SDEPT,SEX,AGE)SID,SNAME,SDEPT,SEX,AGE分别代表学号、学员姓名、所属部门、学员性别、学员年龄C(CID,CNAME)CID,CNAME分别代表课程编号、课程名称SC(SID,CID,GRADE)SID,CID,GRADE分别代表学号、所选修的课程编号、学习成绩表结构与数据见Data4SqlTest1.sql要求实现如下5个处理:1.使用标准SQL嵌套语句查询选修课程名称为“英语”的学员学号和姓名2.使用标准SQLJoin语句查询选修课程名
2、称为“英语”的学员学号和姓名3.使用标准SQL语句查询不选修“数学”课程的学员姓名和所属单位4.使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位5.查询选修了课程的学员人数6.查询选修课程超过3门的学员学号和所属单位1.使用标准SQL嵌套语句查询选修课程名称为“英语”的学员学号和姓名Java代码1.SELECTSNAME,SDEPTFROMS2.WHERESIDIN(3.SELECTSIDFROMC,SC4.WHEREC.CID=SC.CID5.ANDCNAME='英语')SELECTSNAME,SDEPTFROMSWHERESIDIN(SELECTS
3、IDFROMC,SCWHEREC.CID=SC.CIDANDCNAME='英语')2.使用标准SQLJoin语句查询选修课程名称为“英语”的学员学号和姓名Java代码1.SELECTSNAME,SDEPTFROMS2.JOINSCONS.SID=SC.SIDJOINCONC.CID=SC.CID3.WHERECNAME='英语'SELECTSNAME,SDEPTFROMSJOINSCONS.SID=SC.SIDJOINCONC.CID=SC.CIDWHERECNAME='英语'3.使用标准SQL语句查询不选修“数学”课程的学员姓名和所属单位Java代码1.sel
4、ectSNAME,SDEPT1.fromS2.whereSIDnotin(3.selectSC.SID4.fromSC5.rightjoin(selectS.SID,C.CIDfromSjoinC)asTonSC.SID=T.SIDandSC.CID=T.CIDjoinConT.CID=C.CID6.whereC.CNAME='数学'andSC.SIDisnotnull7.)selectSNAME,SDEPTfromSwhereSIDnotin(selectSC.SIDfromSCrightjoin(selectS.SID,C.CIDfromSjoinC)asT
5、onSC.SID=T.SIDandSC.CID=T.CIDjoinConT.CID=C.CIDwhereC.CNAME='数学'andSC.SIDisnotnull)或者是:Java代码1.SELECTSNAME,SDEPTFROMS2.WHERESIDNOTIN(3.SELECTSIDFROMSC4.WHERECIDIN(SELECTCIDFROMCWHERECNAME='数学'))SELECTSNAME,SDEPTFROMSWHERESIDNOTIN(SELECTSIDFROMSCWHERECIDIN(SELECTCIDFROMCWHERECNAME='数学
6、'))4.使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位Java代码1.selectSNAME,SDEPT2.fromS3.whereSIDin4.(selectS.SID5.fromS6.innerjoinSConS.SID=SC.SID7.groupbyS.SID8.havingcount(CID)=(selectcount(1)fromC)9.)selectSNAME,SDEPTfromSwhereSIDin(selectS.SIDfromSinnerjoinSConS.SID=SC.SIDgroupbyS.SIDhavingcount(CID
7、)=(selectcount(1)fromC))5.查询选修了课程的学员人数Java代码1.SELECT学员人数=COUNT(DISTINCT(SID))FROMSCSELECT学员人数=COUNT(DISTINCT(SID))FROMSC6.查询选修课程超过3门的学员学号和所属单位Java代码1.SELECTSNAME,SDEPTFROMS2.WHERESIDIN(3.SELECTSIDFROMSC1.GROUPBYSID2.HAVINGCOUNT(DISTINCT(CID))>3)