SQL查询学生号为20220501的学生选修的所有课程的课程号课程名及成绩
时间: 2023-03-31 20:00:19 浏览: 279
可以使用以下 SQL 语句查询学生号为20220501的学生选修的所有课程的课程号、课程名及成绩:
SELECT course.course_id, course.course_name, score.score
FROM course, score
WHERE course.course_id = score.course_id AND score.student_id = '20220501'
相关问题
sql 查询没有学生选修的课程号和课程名
可以使用左连接(left join)和子查询(subquery)来实现这个查询:
```
SELECT c.course_id, c.course_name
FROM course c
LEFT JOIN (
SELECT DISTINCT sc.course_id
FROM score sc
) s ON c.course_id = s.course_id
WHERE s.course_id IS NULL;
```
这个查询首先使用左连接将课程表和选课表连接起来,然后在连接的结果中,筛选出没有成绩记录的课程即可。
SQL语句查询每个学生的学号、姓名、选修的课程号、课程名和成绩
可以使用如下的 SQL 语句来查询每个学生的学号、姓名、选修的课程号、课程名和成绩:
```
SELECT s.id AS 学号, s.name AS 姓名, c.id AS 课程号, c.name AS 课程名, sc.score AS 成绩
FROM student s
INNER JOIN score sc ON s.id = sc.stu_id
INNER JOIN course c ON sc.course_id = c.id;
```
其中,`student` 表存储了学生的信息,包括学号和姓名;`course` 表存储了课程的信息,包括课程号和课程名;`score` 表存储了学生选修的课程和对应的成绩,包括学生的学号、课程号和成绩。通过 `INNER JOIN` 连接这三个表,就可以查询到每个学生的学号、姓名、选修的课程号、课程名和成绩。