检索选修课程名为'数据结构'的学生学号与姓名 要求:写出关系代数表达式 写出sql命令
时间: 2023-05-29 13:03:32 浏览: 735
关系代数表达式:
σ(选修课程名='数据结构')(选课)
SQL命令:
SELECT 学号, 姓名
FROM 学生, 选课, 课程
WHERE 学生.学号 = 选课.学号
AND 选课.课程号 = 课程.课程号
AND 课程.选修课程名 = '数据结构'
相关问题
教学数据库中有3个关系: 学生关系s (sno, sname,sage,ssex) 选课关系sc(sno,cno,score) 课程关系c(cno,cname, cpno,credit) 检索选修课程名为'数据结构'的学生学号与姓名 要求:写出关系代数表达式 写出sql命令
关系代数表达式:
πsno, sname (σcname='数据结构' (s ⨝ sc ⨝ c))
SQL命令:
SELECT s.sno, s.sname
FROM student s, sc, course c
WHERE s.sno = sc.sno AND sc.cno = c.cno AND c.cname = '数据结构';
现有关系数据库如下: 学生(学号,姓名,性别,专业) 课程(课程号,课程名,先修课,学分) 学习(学号,课程号,分数) (1)用关系代数表达式实现: 检索所有选修了课程号为“C111”的课程的学生的学号、姓名和分数(2)用SQL语句实现: 创建课程表,课程号为主码,课程名不允许为空,先修课参照课程号。 (3)用SQL语句实现:向课程表中插入一条记录,课程号为“C111”,课程名为数据库原理,先修课为空,学分为4. (4) 用SQL语句实现: 将课程号为“C111”的课程的学分修改为5; (5) 用SQL语句实现:检索“网工"专业学生所学课程的信息,包括学号、姓名、课程名和分数;(6) 用SQL语句实现: 删除选修了"数据库原理”并且分数为空的选课信息。
(1) $\pi_{学号,姓名,分数}(\sigma_{课程号='C111'}(学生\bowtie 学习))$
(2)
```
CREATE TABLE 课程 (
课程号 CHAR(4) PRIMARY KEY,
课程名 VARCHAR(20) NOT NULL,
先修课 CHAR(4) REFERENCES 课程(课程号)
);
```
(3)
```
INSERT INTO 课程 VALUES('C111','数据库原理',NULL,4);
```
(4)
```
UPDATE 课程 SET 学分=5 WHERE 课程号='C111';
```
(5)
```
SELECT 学生.学号,学生.姓名,课程.课程名,学习.分数
FROM 学生,课程,学习
WHERE 学生.学号=学习.学号 AND 课程.课程号=学习.课程号 AND 学生.专业='网工';
```
(6)
```
DELETE FROM 学习 WHERE 课程号='C111' AND 分数 IS NULL;
```
阅读全文