学生选课数据库中有如下两张表: 学生表(学号,姓名,专业) 选课表(学号,课程号,成绩) 其中,选课表中记录学生选课情况,每个学生可以选多门课,每门课可以有多个学生选修。 如果要查询所有同学的选课情况,包括没有选课的学生,应该使用( )连接
A: 内
B: 外
C: 交叉
D: 自然
A: 内
B: 外
C: 交叉
D: 自然
举一反三
- 对学生选课,一个学生选修多门课程,一门课程被多个学生选修。请分析选课关系模式:选课(学号,姓名,课号,成绩,选修学期),选课关系模式满足_________范式
- 查询选修课程号为“101”课程得分最高的同学,正确的SQL语句是( )。 A: A) SELECT 学生.学号,姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号AND 课程号="101" AND 成绩>=ALL(SELECT 成绩 FROM 选课) B: B) SELECT 学生.学号,姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号AND 成绩>=ALL(SELECT 成绩 FROM 选课 WHERE 课程号="101") C: C) SELECT 学生.学号,姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号AND 成绩>=ANY(SELECT 成绩 FROM 选课 WHERE 课程号="101") D: D) SELECT 学生.学号,姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号AND 课程号="101" AND 成绩>=ALL(SELECT 成绩 FROM 选课 WHERE 课程号="101")
- 【单选题】设有学生(学号,姓名,性别,出生日期)和选课(学号,课程号,成绩)两个关系,查询选修课程号为"101"课程得分最高的同学,正确的SQL语句是____________。 A. SELECT 学生.学号, 姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 成绩>=ALL(SELECT 成绩 FROM 选课 WHERE 课程号="101") B. SELECT 学生.学号, 姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 课程号="101" AND 成绩 >=ALL(SELECT 成绩 FROM 选课) C. SELECT 学生.学号, 姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 课程号="101" AND 成绩>=ALL(SELECT 成绩 FROM 选课 WHERE 课程号 D. SELECT 学生.学号, 姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号 AND 成绩>=ANY(SELECT 成绩 FROM 选课 WHERE 课程号="101")
- 设要创建学生选课数据库,库中包括学生、课程和选课3个表,其表结构如下。 学生(学号,姓名,性别,年龄,所在系) 课程(课程号,课程名,先行课) 选课(学号,课程号,成绩) 用SQL语句完成下列操作。 (1)创建学生选课库。 (2)创建学生、课程和选课表,其中学生中“性别”的域为“男”或“女”,默认值为“男”。
- 【单选题】若有“学生”、“课程”、“选课”三张表,其关系模式分别为:学生 ( 学号 , 姓名 , 性别 , 出生日期 , 班级 ) ,课程 ( 课程号 , 课程名 , 学分 ) ,选课 ( 学号 , 课程号 , 成绩 ) ,下列哪个语句可以实现查询学生的学号和姓名、所选课程的课程号和课程名以及成绩的功能? A. SELECT 学号 , 姓名 , 课程号 , 课程名 , 成绩 FROM 学生 , 课程 , 选课 B. SELECT 学号 , 姓名 , 课程号 , 课程名 , 成绩 FROM 学生 , 课程 , 选课 WHERE 学生 . 学号 = 选课 . 学号 AND 选课 . 课程号 = 课程 . 课程号 C. SELECT 学生 . 学号 , 姓名 , 课程 . 课程号 , 课程名 , 成绩 FROM 学生 , 课程 , 选课 WHERE 学生 . 学号 = 选课 . 学号 , 选课 . 课程号 = 课程 . 课程号 D. SELECT 学生 . 学号 , 姓名 , 课程 . 课程号 , 课程名 , 成绩 FROM 学生 , 课程 , 选课 WHERE 学生 . 学号 = 选课 . 学号 AND 选课 . 课程号 = 课程 . 课程号