我看到了相同的其他数据库设计主题,但它们就像记录一天的单次出勤。
我想每天记录 5 个科目的学生出勤率,然后在我的 php 页面上检索它,学生可以在其中输入他的卷号,出勤率将显示为 15/20,就像 5 行中的 5 个科目一样。其中15是他参加的课程总数,20是他参加的课程总数。
我知道更好的方法是为不同的实体制作不同的表格,但我无法提出设计。
我想到的是:
包含列的表:
id, 学生姓名, 日期, 学科, 学科类(布尔值, 是该日期举行的该学科的讲座), 出勤率(布尔值, 学生是否参加)
或者为 5 个科目设置 5 个不同的表格,例如:假设物理列:id、学生姓名、日期、参加过
但是这两个表都会有很多冗余值。假设第二张桌子,70 名学生参加 3 天,每个名字将重复三次,3 个日期将重复 70 次。
有更好的方法吗?
PS 我不知道 MySQL 中的外键或任何其他概念,但是太天真以至于无法在一天内学习并实现它。