学生表里的一个学生修读科目表里的每一门科目,而这张考试表的每一行记录就表示学生表里的某个学生参加了一次科目表里某门科目的测试。
**问题**:
要求写一段 SQL 语句,查询出==每个学生参加每一门科目测试的次数==,结果按 student_id 和 subject_name 排序。
create table if not exists Students (student_id int , student_name varchar(20));
Create table If Not Exists Subjects (subject_name varchar(20));
Create table If Not Exists Examinations (student_id int, subject_name varchar(20));
**结果表需包含所有学生和所有科目(即便测试次数为0):**
Alice 参加了 3 次数学测试, 2 次物理测试,以及 1 次编程测试;==
Bob 参加了 1 次数学测试, 1 次编程测试,没有参加物理测试;==
Alex 啥测试都没参加;==
John 参加了数学、物理、编程测试各 1 次。==
网友评论