MySQL 数据库结构决策 : many to many using link-table or parent id?

标签 mysql many-to-many relationship

我有点纠结于决定哪种数据库结构最适合我的性能..

我有两个表:

Catalogue          Items
ID | Descr        I_ID | Descr

在两个表中,所有行都是唯一的

用关系术语来说,Catalogue 中的记录可以包含来自 Items 的多条记录,但有些记录不会包含任何 Items

Items 可以与 Catalogue 有多种关系,但不一定每个项目都与 Catalogue 有关系。

事实1 - Items 中的记录比 Catalogue 中的记录多 7 倍

事实2 - 因此,如果CatalogueItems 之间存在关系 - 两个表中的关系是相等的

将它们联系起来的最佳选择是什么?

最佳答案

简单的方法是有一个交集表,例如:

项目目录

目录 ID |商品编号

关于MySQL 数据库结构决策 : many to many using link-table or parent id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9633915/

相关文章:

php - Symfony + Doctrine 与链接表的多对多关系

ios - 核心数据不会自动处理逆关系

mysql - 计算前一天的日期

php - 在面向对象编程中,哪个对象应该维护多对多关系? (如果有的话)

php - apache 中的 Drupal 项目设置没有响应且没有错误

Laravel 定义同一张表的多对多关系

python - 如何在Django管理员中为关系字段设置初始值?

javascript - MongoDB 和 Mongoose : Nested Array of Document Reference IDs

mysql - 并集和左连接查询

MySQL - 复制同一记录的字段值 - 子选择