首页 范文大全 古典文学 职场知识 中国文学 公文书信 外国名著 寓言童话 百家讲坛 散文/诗歌 美文欣赏 礼仪知识 民俗风情
  • 工作总结
  • 工作计划
  • 心得体会
  • 竞聘演讲
  • 会议发言
  • 爱国演讲
  • 就职演说
  • 开业开幕
  • 思想学习
  • 征文演讲
  • 经验材料
  • 述职报告
  • 调研报告
  • 工作汇报
  • 年终总结
  • 申报材料
  • 学习体会
  • 企划方案
  • 活动方案
  • 技巧经验
  • 模板范例
  • 思想宣传
  • 经济工作
  • 工作报告
  • 组织人事
  • 反腐倡廉
  • 慰问贺电
  • 先进事迹
  • 思想汇报
  • 入党申请书
  • 党会发言
  • 先进性教育
  • 入团申请书
  • 个人简历
  • 演讲稿
  • 调查报告
  • 实习报告
  • 和谐社会
  • 观后感
  • 读后感
  • 作文范文
  • 自我鉴定
  • 讲话稿
  • 自查报告
  • 数据库实验报告,(3)

    时间:2020-10-31 12:14:58 来源:蒲公英阅读网 本文已影响 蒲公英阅读网手机站

    相关热词搜索:实验 数据库 报告

     实验内容与要求 请有选择地实践以下各题。

     (1)基于“教学管理”数据库jxgl,使用SQL得查询语句表达下列查询: ①检索年龄大于23岁得男学生得学号与姓名; SELECT Sno,Sname FROM Student WHERE Ssex=’男"AND

      Sage〉23; ②检索至少选修一门课程得女生姓名; SELECT Sname FROM Student WHERE Ssex=’女’AND Sno IN ( onS TCELESﻩFROM SC GROUP BY Sno HAVING count(*)>=1; ); ③检索王同学不学得课程得课程号; SELECT Cno; FROM Course WHERE Cno NOT IN ( SELECT Cno FROM Student,SC WHERE Sname like ’王%"AND Student、Sno=SC、Sno ); ④检索至少选修两门课程得学生学号; SELECT DISTINCT Sno FROM SC GROUP BY Sno HAVING count(*)>=2;

     ⑤检索全部学生都选修得课程得课程号与课程名; SELECT Cno,Cname FROM Course WHERE NOT EXISTS ( SELECT *

     FROM Student WHERE NOT EXISTS ( * TCELESﻩFROM SC WHERE SC、Sno=Student、Sno AND SCo=Courseo ) ); ⑥检索选修了所有 3 学分课程得学生学号;

     SELECT DISTINCT Sno FROM SC X WHERE NOT EXISTS ( SELECT * FROM Course WHERE Ccredit=3 AND NOT EXISTS ( SELECT * FROM SC Y WHERE X、Sno=Y、Sno AND Courseo=Yo ) ); (2)基于“教学管理”数据库jxgl,使用 SQL 得查询语句表达下列查询: ①统计有学生选修得课程门数;

     )onC TCNITSID(tnuoc TCELESﻩFROM SC; ②求选修 4 号课程得学生得平均年龄;

     )egaS(GVA TCELESﻩFROM Student,SC WHERE Cno=4 AND Student、Sno=SC、Sno; ③求学分为 3 得每门课程得学生平均成绩; SELECT AVG(Grade) FROM Course,SC WHERE Ccredit=3 AND Courseo=SCo GROUP BY SCo; ④统计每门课程得学生选修人数,要求超过 3 人得课程才统计,要求输出课程号与选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列; SELECT Cno,count(Sno)

     FROM SC

     GROUP BY Cno HAVING count(Sno)〉3 ORDER BY count(Sno) DESC,Cno ASC; ⑤检索学号比“王菲”同学大而年龄比她小得学生姓名; SELECT Sname FROM Student X WHERE Sno> ( onS TCELESﻩFROM Student Y WHERE Sname=’王菲’AND Sage〉 ( egaS TCELESﻩFROM Student Z WHERE Sname=’王菲’AND X、Sno=Z、Sno AND Y、Sno=Z、Sno ) ); ⑥检索姓名以“王”打头得所有学生得姓名与年龄;

     SELECT Sname,Sage FROM Student WHERE Sname LIKE ‘王%'; ⑦在 SC 中检索成绩为空置得学生学号与课程号; SELECT Sno,Cno FROM SC WHERE Grade is NULL; ⑧求年龄大于女同学平均年龄得男学生姓名与年龄; SELECT Sname,Sage FROM Student X WHERE Ssex=’男’AND Sage〉 ( )egaS(GVA TCELESﻩFROM Student WHERE Ssex='女’AND X、Sno=Y、Sno ); ⑨求年龄大于所有女同学年龄得男同学姓名与年龄; SELECT Sname,Sage FROM Student X WHERE Ssex=’男’AND Sage〉 ( SELECT MAX(Sage) FROM Student Y WHERE Ssex='女"AND X、Sno=Y、Sno ); ⑩检索所有比“王华”年龄大得学生姓名,年龄与性别; SELECT Sname,Sage,Ssex FROM Student X WHERE Sage> ( SELECT Sage FROM Student Y WHERE Sname=’王华"AND X、Sno=Y、Sno ); ①检索选修“2”课程得学生中成绩最高得学生与学号; SELECT Sname,SC、Sno FROM Student,SC WHERE Cno=2 AND Student、Sno=SC、Sno; ②检索学生姓名与其所选修课程得课程号与成绩; SELECT Sname,Cno,Grade FROM Student,SC WHERE Student、Sno=SC、Sno GROUP BY Sname; ③检索选修4门以上课程得学生总成绩(不统计不及格得课程),并要求按总成绩得降序排列出来; SELECT Sno,SUM(Grade) FROM SC X

     WHERE Grade〉=60 AND Sno IN ( onS TCELESﻩFROM SC Y WHERE X、Sno=Y、Sno GROUP BY Sno HAVING count(Cno)〉4 ) ` ;CSED )edarG(MUS YB REDROﻩ(3)设有表4-1~表4—4得4个基本表(表结构于表内容就是假设得),请先创建数据库及根据表内容创建表结构,并添加表记录,写出实现以下各题功能得 SQL 语句: 创建以下 4 各表: CREATE TABLE STUDENT ( SNO CHAR(6) PRIMARY KEY, SNAME CHAR(20) UNIQUE, SEX CHAR(2), AGE SMALLINT, CLASS CHAR(4) ); CREATE TABLE TEACHER ( TNO CHAR(3) PRIMARY KET, TNAMW CHAR(20) UNIQUE, SEX CHAR(2), AGE SMALLINT, PROF CHAR(10), DEPT CHAR(10) ); CREATE TABLE COURSE ( CNO CHAR(4)

     PRIMARY KEY, CNAME CHAR(20) UNIQUE, TNO CHAT(3), FOREIGN

     KEY TNO REFERENCES TEACHER(TNO) ); CREATE TABLE SC ( SNO CHAR(6), CNO CHAR(4), GRADE SMALLINT, PRIMARY KEY(SNO,CNO), FOREIGN KEY SNO REFERENCES STUDENT(SNO), FOREIGN KEY CNO REFERENCES COURSE(CNO) );

     插入数据:

     INSERT INTO STUDENT VALUES(‘980101",’李华’,‘男’,19,’9801’); 、、、、、、 同上方法依次插入数据 ①查询选修课程“8105”且成绩在80 到 90 之间得所有记录; SELECT * FROM SC WHERE CNO=’8105’AND GRADE BETWEEN 80 AND 90; ②查询成绩为 79,89 或99得记录; SELECT * FROM SC WHERE GRADE IN(79,89,99); ③查询“9803"班得学生人数; SELECT count(SNO) FROM STUDENT WHERE SNO LIKE ‘9803%’; ④查询至少有 20 名学生选修得并且课程号以 8 开头得课程及平均成绩; SELECT CNO,AVG(GRADE) FROM SC WHERE CNO LIKE ‘8%’ GROUP BY CNO; HAVING count(SNO)〉=20; ⑤查询最低分大于 80,最高分小于95 得 SNO 与平均分; SELECT SNO,AVG(GRADE)

     FROM SC GROUP BY SNO HAVING MIN(GRADE)〉80 AND MAX(GRADE)<95; ⑥查询“9803"班得学生所选各课程得课程号及平均成绩; SELECT CNO,AVG(GRADE)

     FROM SC WHERE SNO LIKE ‘9803’ GROUP BY CNO; ⑦查询选修“8105”课程得成绩高于“980302"号同学成绩得所有同学得记录; SELECT * FROM SC X WHERE CNO=’8105’AND GRATE〉 ( SELECT GRATE FROM SC Y WHERE CNO=’8105"AND SNO="980302’AND X、SNO=Y、SNO ); ⑧查询与学号为“980103”得同学同岁得所有学生得SNO,SNAME 与 AGE; SELECT SNO,SNAME,AGE

     FROM STUDENT X WHERE AGE= ( SELECT AGE FROM STUDENT Y WHERE SNO=’980103’AND X、SNO=Y、SNO ); ⑨查询“钱军”教师任课得课程号,以及选修其课程学生得学号与成绩; SELECT SCO,SNO,GRADE FROM SC,TEACHRT,COURSE WHERE TNAME=’钱军’AND TEACHER、TNO=COURSE、TNO AND SC、CON=COURSE、CON; ⑩查询选修某课程得学生人数多于 20 人得教师姓名; SELECT DISTINCT TNAME FROM TEACHER,SC,COURSE WHERE TEACHER、TNO=COURSE、TNO AND SC、CON=COURSE、CON GROUP BY SCO HAVING count(SNO)>20; 11 查询选修编号为“8105"课程且成绩至少高于其选修编号为“8245”课程成绩得同学得 SNO及“8105”课程成绩,并按成绩从高到低依次排列; SELECT SNO GRADE FROM SC X WHERE CNO="8105’AND GRADE〉 ( SELECT GRADE FROM SC Y WHERE CNO="8245’AND X、SNO=Y、SNO ) ORDER BY GRADE DESC; 12 查询选修编号为“8105”课程且成绩高于所有选修编号为“8245”课程成绩得同学得CNO、SNO、GRADE; SELECT CNO,SNO,GRADE FROM SC WHERE CNO="8105’AND GRADE〉 ( SELECT MAX(GRADE) FROM SC WHERE CNO=’8245"AND XO=Y、SNO ); 13列出所有教师与同学得姓名,SEX,AGE; SELECT TNAME,TEACHER、SEX,TEACHER、AGE,SNAME,STUDENT、SEX,STUDENT、AGE FROM TEACHER,SC 14 查询成绩比该课程平均成绩高得学生得成绩表;

     SELECT * FROM SC、X GROUP BY SNO HAVING GRADE〉 ( ﻩSELECT AVG(GRADE) FROM SC、Y WHERE XO=YO GROUP BY CNO ); 15 列出所有任课教师得 TNAME 与DEPT; SELECT TNAME,DEPT FROM TEACHER,COURSE WHERE TEACHER、TNO=COURSE、TNO 16 列出所有未讲课教师得TNAME 与 DEPT; SELECT TNAME,DEPY FROM TEACHER WHERE NOT EXISTS ( SELECT * FROM COURSE WHERE TEACHER、TNO=COURSE、TNO ); 17 列出至少有 4 名男生得班号; SELECT CLASS FROM STUDENT GROUP BY CLASS HAVING count(SNO)〉=4; 18 查询不姓“张"得学生记录; SELECT * FROM STUDENT WHERE SNAME NOT LIKE ‘张%’; 19 查询每门课最高分得学生得SNO,CNO,GRADE; SELECT SNO,CNO,GRADE FROM SC GROUP BY CNO HAVING GRADE=MAX(GRADE); 20 查询与“李华”同性并同班得同学 SNAME; SELECT SNAME FROM STUDENT X WHERE CLASS= ( SELECT CLASS FROM STUDENT Y

     WHERE SNAME=’李华’AND SEX= ( SELSCT SEX FROM STUDENT Z WHERE SNAME=’李华’AND X、SNO=Y、SNO AND Y、SNO=Z、SNO ) ); 21 查询“女”教师及其所上得课程; SELECT TNAME,CNO,CNAME FROM TEACHER,COURSE WHERE TEACHER、TNO=COURSE、TNO,SEX=’女"; 22查询选修“数据库系统”课程得“男”同学得成绩表; SELECT * FROM SC,COURSE,STUDENT WHERE STUDENT、SNO=SC、SNO AND COURSEO=SCO AND CNAME='数据库系统’

      AND SEX=’男’; 23 查询所有比刘涛年龄大得教师姓名,年龄与刘涛得年龄; SELECT TNAME,AGE FROM TEACHER X WHERE SNAME=’刘涛"OR AGE> ( SELECT AGE FROM TEACHER Y WHERE X、TNO=Y、TNO AND SNAME=’刘涛’ ); 24 查询不讲授“8106”号课程得教师姓名. SELECT TNAME FROM TEACHER,COURSE WHERE TEACHER、TNO=COURSE、TNO AND CNO NOT IN(8106);

    • 范文大全
    • 职场知识
    • 精美散文
    • 名著
    • 讲坛
    • 诗歌
    • 礼仪知识