使用内连接查询数据库课程成绩大于90分的学生姓名和成绩,(成绩位于sc表中,学生姓名位于s表,数据库课程名位于c表)
时间: 2024-01-03 13:03:44 浏览: 41
好的,以下是使用内连接查询数据库课程成绩大于90分的学生姓名和成绩的 SQL 语句:
```
SELECT s.sname, sc.score
FROM s
INNER JOIN sc ON s.sno = sc.sno
INNER JOIN c ON sc.cno = c.cno
WHERE c.cname = '数据库' AND sc.score > 90;
```
这个查询语句中,使用了三个表的内连接,将学生、成绩、课程三个表按照学生编号和课程编号进行连接。然后使用 WHERE 语句过滤出课程名为“数据库”且成绩大于90分的记录,并且只选取学生姓名和成绩这两个字段。
相关问题
修改视图sc_view1,使其从数据库gradem的sc表中查询出成绩大于90分的所有学生第3学期选修课程成绩的信息。
假设sc表中的字段为:学号(sno)、课程号(cno)、成绩(score)、学期(term)。那么可以使用以下SQL语句来实现:
```
SELECT *
FROM gradem.sc_view1
WHERE score > 90 AND term = 3;
```
解释一下:首先从gradem数据库中的sc_view1视图中查询符合条件的记录,即成绩大于90分且学期为第3学期的记录。其中,gradem是数据库名,sc_view1是视图名。
需要注意的是,这里的视图名已经给出了,可能需要根据具体情况进行修改。另外,如果视图中的字段与上述假设不同,需要根据实际情况进行修改。
创建一个名为sc_view1的视图,从数据库gradem的sc表中查询出成绩大于90分的所有学生第一学期选修课程成绩的信息
在MySQL中,创建名为sc_view1的视图,并从gradem数据库中的sc表中选择成绩大于90分的所有学生第一学期选修课程成绩的信息,可以使用以下代码:
```
CREATE VIEW sc_view1 AS
SELECT *
FROM sc
WHERE grade > 90 AND term = 1;
```
这将创建一个名为sc_view1的视图,并从sc表中选择成绩大于90分且学期为1的所有记录。现在,您可以像查询任何其他表一样查询视图:
```
SELECT *
FROM sc_view1;
```
这将返回符合条件的所有记录。