mysql查询选修2号课程且成绩在90分以上的所有学生的学号和姓名
时间: 2023-12-17 22:05:11 浏览: 460
以下是MySQL查询选修2号课程且成绩在90分以上的所有学生的学号和姓名的语句:
```mysql
SELECT student.sno, student.sname
FROM student, sc
WHERE student.sno = sc.sno
AND sc.cno = '2'
AND sc.grade >= 90;
```
其中,`student`是学生表,`sc`是选课表,`sno`是学号,`sname`是姓名,`cno`是课程号,`grade`是成绩。
相关问题
mysql数据库 查询计算机系的学生的学号、姓名; 查询选修了数据库课程的学生学号姓名和成绩; 查询选修了学号为's02'的学生的全部选修课程的学生的学号姓名和系别。
以下是您所需要的三个 MySQL 查询语句:
1. 查询计算机系的学生的学号、姓名:
```
SELECT 学号, 姓名 FROM 学生表 WHERE 系别='计算机系';
```
2. 查询选修了数据库课程的学生学号姓名和成绩:
```
SELECT 学生表.学号, 学生表.姓名, 成绩表.成绩
FROM 学生表
INNER JOIN 成绩表 ON 学生表.学号 = 成绩表.学号
WHERE 成绩表.课程名 = '数据库';
```
3. 查询选修了学号为's02'的学生的全部选修课程的学生的学号姓名和系别:
```
SELECT 学生表.学号, 学生表.姓名, 学生表.系别
FROM 学生表
INNER JOIN 选课表 ON 学生表.学号 = 选课表.学号
WHERE 选课表.课程号 IN
(SELECT 选课表.课程号
FROM 选课表
WHERE 选课表.学号 = 's02');
```
请注意,以上查询语句仅供参考,实际使用时需要根据您的数据库表结构进行适当的调整。
在MySQL中使用SQL语句完成完成以下操作: 1、查询选修了学分为4且包含“数据库”3个字的课程的学生姓名、课程名和成绩。 2、查询平均成绩在80分以上的学生的学号和姓名。 3、根据选课人数多少,列出课程排行榜。 4、查询至少选修过2门课程且学分在3分以上的学生的学号和姓名。 5、查询所有学生的选课情况,包括学生的姓名、课程名、成绩。 6、统计所有学生的选课总量。 7、统计从未选过课的学生的学号和姓名。 8、查询从来没有人选的课程的课程号和课程名。
我可以回答关于MySQL的问题。以下是回答:
1. 查询选修了学分为4且包含“数据库”3个字的课程的学生姓名、课程名和成绩:
```
SELECT s.name, c.name, sc.grade
FROM student s, course c, sc
WHERE s.sId = sc.sId AND c.cId = sc.cId AND c.name LIKE '%数据库%' AND sc.credit = 4;
```
2. 查询平均成绩在80分以上的学生的学号和姓名:
```
SELECT s.sId, s.name
FROM student s, sc
WHERE s.sId = sc.sId
GROUP BY s.sId
HAVING AVG(sc.grade) >= 80;
```
3. 根据选课人数多少,列出课程排行榜:
```
SELECT c.name, COUNT(sc.sId) AS num
FROM course c, sc
WHERE c.cId = sc.cId
GROUP BY c.cId
ORDER BY num DESC;
```
4. 查询至少选修过2门课程且学分在3分以上的学生的学号和姓名:
```
SELECT s.sId, s.name
FROM student s, sc
WHERE s.sId = sc.sId AND sc.credit >= 3
GROUP BY s.sId
HAVING COUNT(*) >= 2;
```
5. 查询所有学生的选课情况,包括学生的姓名、课程名、成绩:
```
SELECT s.name, c.name, sc.grade
FROM student s, course c, sc
WHERE s.sId = sc.sId AND c.cId = sc.cId;
```
6. 统计所有学生的选课总量:
```
SELECT COUNT(*)
FROM sc;
```
7. 统计从未选过课的学生的学号和姓名:
```
SELECT s.sId, s.name
FROM student s
WHERE NOT EXISTS (SELECT * FROM sc WHERE s.sId = sc.sId);
```
8. 查询从来没有人选的课程的课程号和课程名:
```
SELECT c.cId, c.name
FROM course c
WHERE NOT EXISTS (SELECT * FROM sc WHERE c.cId = sc.cId);
```