用子查询的方法查找“CS”系“1”号课程成绩比所有“IS”系“1”号课程成绩都高的学生的sno、sname [SELECT ][10 ]
时间: 2023-06-07 15:11:45 浏览: 53
SELECT s.sno, s.sname
FROM student s, score sc, course c
WHERE s.sno = sc.sno AND sc.cno = c.cno AND c.cname = 'CS1'
AND sc.score > ALL
(SELECT sc2.score
FROM score sc2, course c2
WHERE sc2.cno = c2.cno AND c2.cname = 'IS1')
相关问题
用MySQL查询1课程比2课程成绩高的学生的信息及课程分数
好的,您可以尝试使用以下SQL语句来查询1课程比2课程成绩高的学生的信息及课程分数:
```
SELECT a.student_id, a.course_id as course1, a.score as score1, b.course_id as course2, b.score as score2
FROM scores a, scores b
WHERE a.student_id = b.student_id
AND a.course_id = '1'
AND b.course_id = '2'
AND a.score > b.score;
```
这个查询语句会从成绩表中(scores)中获取学生ID,课程1的成绩,课程2的成绩,然后筛选出课程1的成绩大于课程2的成绩的学生,并返回他们的学生ID,课程1成绩和课程2成绩。
请注意,这只是一个示例查询语句,具体的表名和字段名可能会根据您的实际数据结构而有所不同。
用mysql查询课程号为1201且成绩第1~3名的所有信息
可以使用以下 SQL 语句查询:
```
SELECT *
FROM scores
WHERE course_id = 1201
ORDER BY score DESC
LIMIT 3;
```
这个语句会在 `scores` 表中查找课程号为 1201 的所有成绩,并按照从高到低的顺序排列。然后,使用 `LIMIT 3` 限制结果集只包括前 3 条记录,即成绩最高的前三名。最后,使用 `SELECT *` 显示所有字段的信息。