用sql查询学生的学号,姓名,所选课程的课程号,课程名和成绩信息
时间: 2023-11-16 07:24:57 浏览: 120
好的,以下是SQL查询语句:
SELECT Student.StudentID, Student.Name, Course.CourseID, Course.CourseName, Grade.Score
FROM Student, Course, Grade
WHERE Student.StudentID = Grade.StudentID
AND Course.CourseID = Grade.CourseID;
该语句可以查询学生的学号、姓名、所选课程的课程号、课程名以及对应的成绩信息。希望能够帮到您。
相关问题
SQL语句查询学生的学号、姓名、课程号、课程名、成绩
假设有三个表:学生表(students)、课程表(courses)和成绩表(scores),它们的字段如下:
学生表(students):
- 学号(id)
- 姓名(name)
课程表(courses):
- 课程号(id)
- 课程名(name)
成绩表(scores):
- 学号(student_id)
- 课程号(course_id)
- 成绩(score)
则可以使用如下 SQL 语句查询学生的学号、姓名、课程号、课程名、成绩:
```
SELECT students.id AS 学号, students.name AS 姓名, courses.id AS 课程号, courses.name AS 课程名, scores.score AS 成绩
FROM students, courses, scores
WHERE students.id = scores.student_id AND courses.id = scores.course_id;
```
这里使用了多表连接查询,通过学生表、课程表和成绩表的关联字段进行关联。其中,`AS` 关键字用于给字段取别名。
利用SQL创建学生选课系统,包括学号姓名课程课程分数,查询专业学生的学号和姓名,选修课程的学生学号,某个课程的学生学号和成绩,并对成绩降序排序
首先,我们假设有一个名为`Students`的学生表和一个名为`Courses`的课程表,它们之间的关联可能是通过一个`Enrollments`表,用于存储学生选课的信息。以下是创建这两个基本表的SQL语句示例:
```sql
CREATE TABLE Students (
StudentID INT PRIMARY KEY,
Name VARCHAR(100),
Department VARCHAR(50)
);
CREATE TABLE Courses (
CourseID INT PRIMARY KEY,
CourseName VARCHAR(100),
Teacher VARCHAR(50)
);
CREATE TABLE Enrollments (
StudentID INT,
CourseID INT,
Score INT,
FOREIGN KEY (StudentID) REFERENCES Students(StudentID),
FOREIGN KEY (CourseID) REFERENCES Courses(CourseID)
);
```
然后,对于查询需求:
1. 查询专业为某专业的学生学号和姓名:
```sql
SELECT StudentID, Name
FROM Students
WHERE Department = '你的专业名称';
```
2. 查询选修了课程的学生学号:
```sql
SELECT DISTINCT StudentID
FROM Enrollments;
```
3. 查询某个课程的学生学号和成绩(按成绩降序排序):
```sql
SELECT StudentID, Score
FROM Enrollments
WHERE CourseID = '你想查询的课程ID'
ORDER BY Score DESC;
```
请注意,你需要替换上述SQL语句中的`你的专业名称`、`你想查询的课程ID`为你实际需要的专业名和课程ID。
阅读全文