用sql语句完成下列查询:学生表Student,课程表Course,选课表SC
时间: 2023-07-12 19:07:39 浏览: 107
查询选了课程号为001的学生的姓名和选课成绩:
```sql
SELECT Student.name, SC.score
FROM Student
INNER JOIN SC ON Student.id = SC.student_id
WHERE SC.course_id = '001';
```
相关问题
使用SQL语言创建以下3个数据表:学生表(student)、课程表(course)、学生选课表(SC),分别写出SQL语句。
学生表(student)的SQL语句:
```sql
CREATE TABLE student (
stu_id INT PRIMARY KEY,
stu_name VARCHAR(50),
stu_age INT,
stu_gender VARCHAR(10)
);
```
课程表(course)的SQL语句:
```sql
CREATE TABLE course (
course_id INT PRIMARY KEY,
course_name VARCHAR(50),
course_teacher VARCHAR(50)
);
```
学生选课表(SC)的SQL语句:
```sql
CREATE TABLE SC (
stu_id INT,
course_id INT,
score INT,
PRIMARY KEY (stu_id, course_id),
FOREIGN KEY (stu_id) REFERENCES student(stu_id),
FOREIGN KEY (course_id) REFERENCES course(course_id)
);
```
以上是基本的表结构,可以根据实际需求进行修改和完善。
用 sc 代表选课表 student 为学生表 course 为课程表 随机生成三表内容,并查询选修高等数学的学号和姓名
好的,假设我们有以下三个表:
学生表(student):
| 学号 | 姓名 | 性别 | 年龄 |
|------|------|------|------|
| 001 | 张三 | 男 | 20 |
| 002 | 李四 | 女 | 19 |
| 003 | 王五 | 男 | 21 |
| 004 | 赵六 | 男 | 22 |
| 005 | 小明 | 男 | 18 |
课程表(course):
| 课程编号 | 课程名称 | 学分 |
|----------|-------------|------|
| 001 | 高等数学 | 4 |
| 002 | 大学英语 | 3 |
| 003 | 数据结构 | 4 |
| 004 | 计算机网络 | 3 |
| 005 | 离散数学 | 4 |
选课表(sc):
| 学号 | 课程编号 |
|------|----------|
| 001 | 001 |
| 002 | 002 |
| 003 | 001 |
| 004 | 004 |
| 005 | 001 |
| 001 | 002 |
| 002 | 004 |
| 003 | 003 |
| 004 | 001 |
| 005 | 003 |
现在,我们可以使用如下 SQL 语句查询选修高等数学的学号和姓名:
```
SELECT student.学号, student.姓名
FROM student, sc, course
WHERE student.学号 = sc.学号 AND sc.课程编号 = course.课程编号 AND course.课程名称 = '高等数学';
```
查询结果如下:
| 学号 | 姓名 |
|------|------|
| 001 | 张三 |
| 003 | 王五 |
| 005 | 小明 |