资源描述:
《SQL语句强化练习题及答案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、SQL语句强化练习题及答案一、简单查询1、列出全部学生的信息。SELECT*FROM学生2、列出软件专业全部学生的学号及姓名。SELECT学号,姓名FROM学生WHERE专业="软件"3、列出所有必修课的课号。SELECTDISTINCT课号FROM必修课4、求1号课成绩大于80分的学生的学号及成绩,并按成绩由高到低列出。SELECT学号,成绩FROM选课WHERE课号="1"AND成绩>80ORDERBY成绩DESC5、列出非软件专业学生的名单。方法一:SELECT姓名FROM学生WHERE专业<>"软件"方法二:SELECT姓名
2、FROM学生WHERENOT专业="软件"方法三:SELECT姓名FROM学生WHERE专业!="软件"6、查询成绩在70~80分之间的学生选课得分情况方法一:SELECT*FROM选课WHERE成绩>=70AND成绩<=80方法二:SELECT*FROM选课WHERE成绩BETWEEN70AND80不在此范围内的查询:(注意写出和以下语句等价的语句)SELECT*FROM选课WHERE成绩NOTBETWEEN70AND807、列出选修1号课或3号课的全体学生的学号和成绩。方法一:SELECT学号,成绩FROM选课WHERE课号="
3、1"OR课号="3"方法二:SELECT学号,成绩FROM选课WHERE课号IN("1","3")相反条件查询:SELECT学号,成绩FROM选课WHERE课号NOTIN("1","3")8、列出所有98级学生的学生成绩情况。SELECT*FROM选课WHERE学号LIKE"98%"SELECT*FROM选课WHERE学号LIKE"98____"相反条件查询:SELECT*FROM选课WHERE学号NOTLIKE"98%"9、列出成绩为空值(或不为空值)的学生的学号和课号。答案一:SELECT学号,课号FROM选课WHERE成绩IS
4、NULL答案二:SELECT学号,课号FROM选课WHERE成绩ISNOTNULL10、求出所有学生的总成绩。SELECTSUM(成绩)AS总成绩FROM选课11、列出每个学生的平均成绩。SELECT学号,AVG(成绩)AS平均成绩FROM选课GROUPBY学号12、列出各科的平均成绩、最高成绩、最低成绩和选课人数。SELECT课号,AVG(成绩)AS平均成绩,MAX(成绩)AS最高分,;MIN(成绩)AS最低分,COUNT(学号)AS选课人数FROM选课GROUPBY课号二、连接查询(一)简单连接1、列出选修1号课的学生姓名及成绩
5、。SELECT姓名,成绩FROM学生,选课WHERE学生.学号=选课.学号AND课号="1"2、列出选修1号课的学生的学号、姓名及成绩。SELECT学生.学号,姓名,成绩FROM学生S,选课XWHERES.学号=X.学号AND课号="1"3、求出总分大于150的学生的学号、姓名及总成绩。SELECT学生.学号,姓名,SUM(成绩)AS总成绩FROM学生,选课;WHERE学生.学号=选课.学号GROUPBY选课.学号HAVINGSUM(成绩)>150(二)自连接查询1、列出那些专业相同的学生相应的姓名及专业信息。SELECTa.姓名,
6、b.姓名,专业FROM学生a,学生bWHEREa.学号<>b.学号ANDa.专业=b.专业2、求至少选修1号课和2号课的学生的学号。SELECTX.学号FROM选课X,选课YWHEREX.学号=Y.学号ANDX.课号="1"ANDY.课号="2"3、有以下表rate.dbf 币种1代码C(2)、币种2代码C(2)、买入价N(8,4)、卖出价N(8,4)外汇汇率.dbf 币种1C(4)、币种2C(4)、买入价N(8,4)、卖出价N(8,4)外汇代码.dbf 外汇名称C(10)、外汇代码C(10)要求:将所有“外汇汇率”表中
7、的数据插入rate表中并且顺序不变,由于“外汇汇率”中的币种1和币种2存放的是外币名称,而rate表中的币种1代码和币种2代码应该存放外币代码,所以插入时要做相应的改动,外币名称与外向代码的对应关系存储在“外汇代码”表中。SELECTA.外币代码AS币种1代码,B.外币代码AS币种2代码,;买入价,卖出价FROM外汇代码A,外汇汇率,外汇代码B;WHEREA.外币名称=外汇汇率.币种1ANDB.外币名称=外汇汇率.币种2INTOTABLErate4、假定有“雇员”表(雇员号C(2),雇员姓名C(6),经理号C(2)),根据雇员关系列
8、出上一级经理及其所领导的职员清单。(教案中的例题)SELECT"领导",S.雇员姓名,"雇员",E.雇员姓名FROM雇员S,雇员EWHERES.雇员号=E.经理(三)超连接1、列出选修1号课的学生姓名及成绩。方法一:(使用简单连接查询