示例数据库DB_SC中,有三个表: 学生信息表:Student(Sno,Sname,Sage,Ssex,Sdept) 课程信息表:Course(Cno,Cname,Cpno,Ccredit) 选修记录表:SC(Sno,Cno,Grade) Sno是学生学号,Sname是学生姓名,Sage学生年龄,Ssex是学生性别,Sdept学生所在系,Cno是课程号,Cname是课程名,Grade是学生成绩。查询成绩大于等于85分以上的学生的姓名、课程号和成绩,并按成绩的降序排列结果
时间: 2024-01-02 07:01:58 浏览: 43
可以使用以下 SQL 语句查询:
SELECT Student.Sname, SC.Cno, SC.Grade
FROM Student, SC
WHERE Student.Sno = SC.Sno AND SC.Grade >= 85
ORDER BY SC.Grade DESC;
该语句会返回成绩大于等于85分以上的学生的姓名、课程号和成绩,并按成绩的降序排列结果。其中,通过 `WHERE` 子句连接了 `Student` 和 `SC` 两个表,通过 `Student.Sno = SC.Sno` 来关联学生信息表和选修记录表。`SC.Grade >= 85` 用来过滤成绩大于等于85分的记录。最后使用 `ORDER BY` 子句按成绩的降序排列结果。
相关问题
创建一个student表,字段包括SNO,SNAME,SSEX,SAGE,SDEPT
好的,这个问题是关于数据库的,可以回答。以下是创建student表的SQL语句:
CREATE TABLE student (
SNO VARCHAR(10) PRIMARY KEY,
SNAME VARCHAR(20) NOT NULL,
SSEX CHAR(2) CHECK (SSEX IN ('男', '女')),
SAGE INT CHECK (SAGE > 0 AND SAGE < 120),
SDEPT VARCHAR(20) NOT NULL
);
这个SQL语句将创建一个名为student的表,包含SNO、SNAME、SSEX、SAGE和SDEPT五个字段。SNO是主键,SNAME、SDEPT是非空字段,SSEX只能为男或女,SAGE需要大于0小于120。
在学生表student(sno,sname,sage,ssex,sdept)中插入新元组, 学号:200110101 姓名:Mary 年龄:33
好的,我可以回答这个问题。您可以执行以下 SQL 查询语句来插入新元组:
```
INSERT INTO student (sno, sname, sage, ssex, sdept)
VALUES ('200110101', 'Mary', 33, 'female', 'unknown');
```
请注意,这个查询语句假设 `sno` 是主键,因此必须保证新的学号不重复。同时,我还假设您的年龄是整数类型,性别是字符串类型,系别是字符串类型,并且您想将新学生的系别设为 "unknown"。如果这些假设不成立,请根据您的实际情况作出相应调整。