学生报告

时间:2018-08-24 17:17:43

标签: mysql sql mariadb

我需要学生成绩报告。

I have the following tables: 
- user table with: user_id, first name, last name, course_id
- a course table with: course_id, name
- a subject table with: subject_id, course_id, name
- a marks table with: mark, subject_id, course_id, user_id

我需要显示所选课程的所有学生及其所有科目的分数。

例如:course_id = 18

Last Name | Name | Math | Geography | Science | Physics
Doe       | John |  8   |     7     |    4    |    7
Doe       | Jane |  5   |     8     |    4    |    6

依次类推,直到最后一名学生使用姓氏按字母顺序排序。

使用SQL可以实现吗?不需要php或任何东西。

谢谢!

1 个答案:

答案 0 :(得分:-1)

选择u.last_name,u.first_name,s.name,m.mark

用户u,主题s,标记为m

其中u.user_id = m.user_id和s.subject_id = m.subject_id和s.course_id = m.course_id和s.course_id = 18由u.last_name asc排序

此查询仅针对课程ID 18,但是您可以针对所有课程ID。

此查询不会以您提到的格式生成结果,但会为学生注册的每个科目单独列出一行。

希望这会有所帮助。