【发布时间】:2020-03-30 13:55:59
【问题描述】:
我有一个以 department_id 作为主键的部门表。
我需要创建一个教师表,其中一行可以引用 department_id 中的两个值
部门 = [("EC", "ELECTRONICS"), ("CS", "Computer Science")]
老师=("T001", "teacher1", ["CS", "EC"])
是否可以创建这样的表?
【问题讨论】:
-
你的意思是你想在一个单元格中存储 2 个逗号分隔的值?
-
听起来您应该使用第三张表
TeacherDepartments,您可以在其中存储TeacherId和DepartmentId。 -
@AnkitBajpai 是的
-
@sgeddes 附加值将非常稀疏,例如 100 行中可能出现一次多个值
-
我仍然建议使用第三张桌子。存储逗号分隔的列表可能很难恢复到它的描述......如果您出于某种原因真的不想要新表,您可以将多个
DepartmentId列添加到您的Teacher表中,其中第二个是 @ 987654328@ 大部分时间。例如,teacherid, name, departmentid, departmentid2...
标签: sql postgresql database-design