有以下四张表: 1).学生表 Student(SID,Sname,Sage,Ssex) --SID 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 2).课程表 Course(CID,Cname,TID) --CID --课程编号,Cname 课程名称,TID 教师编号 3).教师表 Teacher(TID,Tname) --TID 教师编号,Tname 教师姓名 4).成绩表 SC(SID,CID,score) --SID 学生编号,CID 课程编号,score 分数 请写出以下
时间: 2024-03-11 11:50:41 浏览: 105
SQL语句:
1. 查询所有学生的姓名、年龄和性别:
```
SELECT Sname, Sage, Ssex FROM Student;
```
2. 查询所有课程的名称和对应的教师姓名:
```
SELECT Cname, Tname FROM Course, Teacher WHERE Course.TID = Teacher.TID;
```
3. 查询所有选修了某门课程的学生的姓名和成绩:
```
SELECT Student.Sname, SC.score FROM Student, SC WHERE Student.SID = SC.SID AND SC.CID = '某门课程编号';
```
4. 查询某个学生的所有成绩及其对应的课程名称:
```
SELECT Course.Cname, SC.score FROM Course, SC WHERE Course.CID = SC.CID AND SC.SID = '某个学生编号';
```
相关问题
mysql有四张表,分别为Student(SID,Sname,Sage,Ssex) –SID 学生编号,Sname 学生姓名,Sage 年龄,Ssex 学生性别;Course(CID,Cname,TID) –CID --课程编号,Cname 课程名称,TID 教师编号;Teacher(TID,Tname) –TID 教师编号,Tname 教师姓名;SC(SID,CID,score) –SID 学生编号,CID 课程编号,score 分数 向四张表中分别添加10条记录
好的,您可以按照以下格式逐条描述要添加的记录,注意字段间用逗号隔开,每条记录之间要用分号隔开:
Student表:
1,张三,18,男;
2,李四,19,女;
3,王五,20,男;
4,赵六,21,女;
5,钱七,22,男;
6,孙八,23,女;
7,周九,24,男;
8,吴十,25,女;
9,郑十一,26,男;
10,王十二,27,女;
Course表:
1,语文,1;
2,数学,2;
3,英语,3;
4,物理,4;
5,化学,5;
6,生物,6;
7,地理,7;
8,历史,8;
9,政治,9;
10,体育,10;
Teacher表:
1,张老师;
2,李老师;
3,王老师;
4,赵老师;
5,钱老师;
6,孙老师;
7,周老师;
8,吴老师;
9,郑老师;
10,王老师;
SC表:
1,1,90;
1,2,85;
1,3,95;
2,1,80;
2,2,75;
2,3,85;
3,2,90;
3,4,95;
4,1,80;
4,4,85;
我们有三张表,student表中有sno,sname,ssex,sage,sdept字段,course表中有cno,cname,cpno,ccredit字段,sc表中有sno,cno,grade字段,查询每个学生的最高分课程信息(输出学号、姓名、课程名、分数)
好的,我明白了您的问题。下面是SQL语句:
```
SELECT s.sno, s.sname, c.cname, MAX(sc.grade)
FROM student s, course c, sc
WHERE s.sno = sc.sno AND c.cno = sc.cno
GROUP BY s.sno, c.cname;
```
这个SQL语句可以查询每个学生的最高分课程信息,包括学号、姓名、课程名和分数。请注意,查询中使用了JOIN操作,以将三个表连接起来。另外,使用了MAX函数来找到每个学生的最高分数。
阅读全文