第1题:
学生(学号,姓名,年龄),老师(教师号,姓名,专业)如果一个老师可以教多个学生,那么学生与老师的关系是()
A. 1:1
B. 2:2
C. M:N
D. 1:N
第2题:
已知表S(学号,姓名,年龄)
SC(学号,课程号,成绩)
C(课程号,课程名,教师名)
试用SQL查询语句表达下列对教学数据库中的三个基本表S、SC、C的查询:
(1)统计有学生选修的课程门数.
(2)求选修C4课程的学生的平均年龄.
(3)求王平老师所授课程的每门课程的学生平均成绩.
(4)统计每门课程的学生选修人数(超过10人的课程才统计).要求输出课程号和选修人数.
(5)查询姓名以WANG开头的所有学生的姓名和年龄.
第3题:
已知关系模式:
S (SNO,SNAME) 学生关系。SNO 为学号,SNAME 为姓名
C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师
SC(SNO,CNO,SCGRADE) 选课关系。SCGRADE 为成绩
要求实现如下5个处理:
1. 找出没有选修过“李明”老师讲授课程的所有学生姓名
2. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩
3. 列出既学过“1”号课程,又学过“2”号课程的所有学生姓名
4. 列出“1”号课成绩比“2”号同学该门课成绩高的所有学生的学号
5. 列出“1”号课成绩比“2”号课成绩高的所有学生的学号及其“1”号课和“2”号课的成绩
第4题:
设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为( )。
A)课号,成绩
B)学号,成绩
C)学号,课号
D)学号,姓名,成绩
第5题:
第6题:
第7题:
第8题:
假设某教学管理数据库有以下三张表,请写出下列问题的SQL语句: 学生(学号,姓名,年龄,性别) 课程(课程号,课程名,任课教师) 成绩(学号,课程号,成绩) (1)如何在SQL Server上创建这三张表; (2)查询刘峰教师所授课程号,课程名; (3)查询年龄大于20岁的所有男同学的学号、姓名; (4)查询至少选修了两门课程(含两门)的学生学号; (5)查询王文芳同学选修的所有课程的课程号; (6)查询王文芳同学不学的课程的课程号; (7)查询所有上刘峰老师课程的学生学号; (8)查询所有选修“数据库原理”的学生的学号; (9)向学生表中插入一条记录(’2003001’,’吴红’,21,’女’);(1表示女,0表示男) (10)删除三张表中所有学号为20020001的学生信息; (11)把学号为20030002的学生的年龄改为22岁。
1.学生表:
Create table 学生表 (
学号 char (8) primary Key,
姓名 char(8),
年龄 int,
性别 bit
)
课程表:
Create table 课程表 (
课程号 char (7) primary Key,
课程名 char(20),
任课教师 char (8)
)
成绩表:
Create table 成绩表 (
学号 char (8),
课程号 char (7),
成绩 Numeric (4,2)
)
2.Select课程号, 课程名 from课程表 where任课教师=’ 刘峰’
3.Select 学号, 姓名 from 学生表 where 性别=1 and 年龄>20
4.select 学号 from 成绩 group by 学号 having count(学号)>=2
5.Select 课程号 from 成绩表, 学生表
Where学生表.姓名=’ 王文芳’ and 学生表.学号=成绩表.学号
6.select 课程号 from 成绩表
where 课程号 not in (select 课程号 from 学生表,成绩表 where 学生表.姓名='王文芳' and 学生表.学号=成绩表.学号)
7.Select 学号 from 成绩表,课程表,学生表
Where 课程表.任课教师='刘世峰' and 课程表.课程号=成绩表.课程号 and 课程表.学号=成绩表.学号
8.Select 学号 from 成绩表,课程表
where 课程表.课程名='数据库技术' and 课程表.课程号=成绩表.课程号
9.insert into 学生表 values ('2003001','吴红','21',1)
10.Delete from学生表 where 学号=’ >20020001’
Delete from学生表 where 学号=’ 20020001’
11. Update 学生表 set 年龄=’22’ where学号=’20030002’
略
第9题:
设有三个关系:S(S#,SNAME,AGE,SEX)C(C#,CNAME,TEACHER)SC(S#,C#,GRADE) 试用关系代数表达式表示下列查询语句: (1)检索“陈军”老师所授课程的课程号(C#)和课程名(CNAME)。 (2)检索年龄小于20的男学生学号(S#)和姓名(SNAME)。 (3)检索至少选修“陈军”老师所授全部课程的学生姓名(SNAME) (4)检索“李强”同学不学课程的课程号(C#)。 (5)检索至少选修两门课程的学生学号(S#)。 (6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。 (7)检索选修课程包含“陈军”老师所授课程之一的学生学号(S#)。 (8)检索选修课程号为C1和C5的学生学号(S#)。 (9)检索选修全部课程的学生姓名(SNAME)。 (10)检索选修课程包含学号为S2的学生所修课程的学生学号(S#)。 (11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。⋈ (σCNAME=’C语言’(C)))))
第10题:
假定有关系学生(学号、姓名、年龄、班级号),课程(课程号、课称名、学分),考试(学号、课程号、成绩),查询20岁的学生的学号、姓名和年龄。使用()关系。
第11题:
课号,成绩
学号,成绩
学号,课号
学号,姓名,成绩
第12题:
SELECT*FROMS
SELECT*WHERESFROM专业=英语
SELECT姓名WHERESFROM专业=英语AND性别=女
SELECT姓名FROMSWHERE专业=英语AND性别=女
第13题:
有以下三个基本表:
学生(学号,姓名,年级,专业)
课程(课号,课名,开课教师,学分)
选课(学号,课号,成绩)
写出相应的SQL语句:
所有90级“软件”专业学生的姓名.
第14题:
查询选修C2课程号的学生姓名,下列SQL语句中错误的是 ______。
A.SELECT 姓名 FROM S WHERE EXISTS (SELECT*FROM SC WHERE 学号=S.学号 AND 课程号='C2')
B.SELECT 姓名 FROM S WHERE 学号 IN (SELECT 学号 FROM SC WHERE 课程号='C2')
C.SELECT 姓名 FROM S JOIN SC ON S.学号=SC.学号 WHERE 课程号='C2'
D.SELECT 姓名 FROM S WHERE 学号= (SELECT 学号 FROM SC WHERE 课程号='C2')
第15题:
【题目描述】
1.已知关系模式:
S (SNO,SNAME) 学生关系。SNO 为学号,SNAME 为姓名
C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师
SC(SNO,CNO,SCGRADE) 选课关系。SCGRADE 为成绩
要求实现如下5个处理:
1. 找出没有选修过“李明”老师讲授课程的所有学生姓名
2. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩
3. 列出既学过“1”号课程,又学过“2”号课程的所有学生姓名
4. 列出“1”号课成绩比“2”号同学该门课成绩高的所有学生的学号
5. 列出“1”号课成绩比“2”号课成绩高的所有学生的学号及其“1”号课和“2”号课的成绩
第16题:
第17题:
第18题:
第19题:
第20题:
有如下三个关系模式: 学生:S(S#,SN,AGE,SEX) 属性含义依次为:学号,姓名,年龄,性别 课程:C(C#,CN,TEACHER) 属性含义依次为:课程号,课程名,教师 选课:SC(S#,C#,SCORE) 属性含义依次为:学号,课程号,成绩 用SQL语句完成以下题查询所有女同学的学号和姓名
第21题:
您在建立查询后,列出班上同学的姓名,却发现某一同学的姓名拼写错误,随后在“数据表”查看中更正了该同学的姓名。下列描述中正确的是()。
第22题:
设有学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字为()
第23题:
SELECT学号,姓名,课程代码,总评成绩FROM学生,成绩ON学生.学号=成绩.学号WHERE学号=’2008001001’
SELECT学号,姓名,课程代码,总评成绩FROM学生INNER JOIN成绩WHERE学生.学号=成绩.学号AND学号=’2008001001’
SELECT学号,姓名,课程代码,总评成绩FROM学生LEFT OUTER JOIN成绩ON学生.学号=成绩.学号WHERE学号=’2008001001’
SELECT学号,姓名,课程代码,总评成绩FROM学生,成绩WHERE学生.学号=成绩.学号AND学号=’2008001001’