mysql - 使用 MySQL 一对多关系

标签 mysql database-design

我目前还没有任何代码。我明白什么是一对多的连接关系,我只是不知道如何让它发挥作用。这里的想法是许多运营商都可以拥有该产品,反之亦然。如果每个表只有 1 个字段来保留其他 ID,我如何跟踪哪些运营商有哪些产品?这是示例:

表:运营商

  • 编号
  • 姓名
  • 产品编号

表:产品

  • 编号
  • 姓名
  • 描述
  • 运营商ID

最佳答案

迈克尔, 运营商表或产品表的信息太多了。使用此表结构,您最终不得不为每个承运人/产品创建一个承运人系列,并为每个产品/承运人创建一个产品系列

考虑这个问题的一种方法是使用三个表:

表:运营商

  • 身份证
  • 姓名

表:产品

  • 身份证
  • 姓名
  • 描述

表:product_carriers

  • carrier_id
  • 产品编号

使用这种类型的结构,您可以从 product_carriers 表中获取所有信息,并且每个产品和承运人的产品和承运人表都是唯一的,从而消除重复信息并加快查询速度。

关于mysql - 使用 MySQL 一对多关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6603398/

相关文章:

sql - 如何仅检索自上次 SQL 查询以来更新/新的记录?

java - 单个 MySQL 实例 + Hibernate Config 与多个 MySQL 实例

mysql - MySQL SELECT 查询中的输出别名

python - 在 Django 中强制执行复合多个键

database-design - 如何调用引用同一个表中的列的列?

php - PHP 和 Mysql 条件查询

php - 在 where 子句中使用小于和大于语句进行查询

mysql - Python 2.7 尝试使用用户名和密码迭代文件,无法正确获取数据

mysql - 将多个选择与更新相结合

database-design - Toad ERD 到 Visio ER 图的转换