即使学生在该学科中没有成绩,我也希望将行旋转到列,但要为每项成绩扫描(1-4)提供一个成绩...
这是我的桌子
students subjects gradesweeps
id | stuname id | subname id | gradesweep
1 | steve 1 | english 1 | check_1
2 | Bob 2 | maths 2 | check_2
3 | check_3
4 | check_4
grades
id | student_id | subject_id | gradesweep_id | grade
1 1 1 1 4
2 1 1 3 6
3 1 1 4 5
学生1在英语中有3项进度检查,而英语却有4项,但希望能够将成绩扫描2视为空结果或为空...
是否可能有这样的结果集;
student_id = 1
subject_id = 1
student_id | subject_id | Check_1 | Check_2 | Check_3 | Check_4
1 1 4 6 5
甚至更好;
student_id | subject_id | gradesweep_id | grade
1 1 1 4
1 1 2 null or blank
1 1 3 6
1 1 4 5
答案 0 :(得分:0)
不建议将数据库设计为容纳空列,应避免这样做。 如果您在设计数据库时遇到问题,建议您阅读数据库规范化。以下链接说明了(1NF),然后继续到(2NF)和(3NF)。
编码愉快!