【发布时间】:2013-10-22 09:00:57
【问题描述】:
我有 3 张桌子:
Persons(PersonID, PersonName, PersonAge, PersonType)
Students(StudentID (fk to Persons.PersonID), StudentRank, StudentClassID, ...)
Teachers(TeacherID (fk to Persons.PersonID), TeacherSalary, ...)
一个人只能是一种类型:学生或老师。所以如果我想列出所有类型的人(学生或教师),我需要检查 Persons 表的 PersonType,然后加入相应的表(学生、教师)?够好吗?谁能给我一个更好的解决方案?
编辑:我使用组合:PHP + MySQL。
更新:表格结构。
【问题讨论】:
-
您真的需要学生/教师表中的任何东西吗?如果没有,请不要担心 - 您可以使用 PersonType 上的 case 语句从 Persons 表中进行选择,或者如果您有一个列出类型的 PersonType 表,则可以连接到另一个表。
标签: database database-design join