【发布时间】:2017-12-28 09:40:45
【问题描述】:
目前我在mysql 中有几个具有这种结构的pivot 表:
user_id |组织ID |输入
4 3 external
4 3 internal
6 4 internal
7 4 external
6 5 external
7 5 external
7 6 internal
如您所见,在我的type 列中,我只使用external 和internal。目前type 列是enum 并已编入索引。
这是一个好的数据库结构还是我应该为type 列创建一个单独的表?
我在几张桌子上遇到了这个“问题”,所以这是一个重要的决定。桌子可能会变得很大。
在这种情况下你会怎么做?
【问题讨论】:
-
“为列类型制作单独的表”是什么意思?请解释/说明。你的意思是,用代理 id 替换类型值并有一个关联 id 和类型值的表?
-
@philipxy 是的,这就是我的意思。
-
我已经改进了你的标题来说明这一点。请编辑您的问题,cmets 不是为了澄清,它们是短暂的,用于请求和确定要编辑到帖子中的澄清。 PS 你的问题需要清晰、准确和完整。对您所想的(部分)内容的适用但模糊的描述/总结并不能传达您的想法。完整的随附示例也有帮助。
标签: mysql sql normalization database-normalization surrogate-key