大表和小表关联, 在哪个表上建立关联字段, 使查询效率更高

有两张表, 如下:
file - 文件表, 用于存储上传的文件
file_version - 文件版本表, 用于实现上传文件多版本, 数据量肯定大于 file 表

当这两张表关联的时候, 如下那种方式好

方式1: 在file表中添加verion_id字段
file.verion_id = file_version.id

方式2: 在file_version中添加file_id字段
file.id = file_version.file_id

后续在关联查询的时候那种方式好?? 还是一样? 反正按照节省空间来说, 应该是小表加一列比大表加一列更省空间, 即: 方式1

阅读 5.8k
3 个回答

当两个表建立一对多关系的时候,"一"的那一端是父表,"多"的那一端是子表。
一般
父表设置主键
子表设置外键
按你的就是:方式2

方式2,不过不建议数据库上建外键

方式1 + 方式2 一起, 因为我要方便的查询文件当前版本, 做了数据冗余, 呵呵

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏