gpt4 book ai didi

php - MySQL多对多关系结构(a可以有多个b,但b也可以有多个a)

转载 作者:行者123 更新时间:2023-11-29 23:31:02 24 4
gpt4 key购买 nike

寻找解决这个问题的最佳方法。

基本上,这是一个让 worker 查看他们一天有哪些工作的设置。
许多 worker 可以有相同的工作,并且每个 worker 可以有多个工作,每个工作可以有多个 worker ,但不一定是相同的“一堆”工作。

示例:
worker a 可以从事工作 1 和 2 以及
worker b 可以从事工作 1 和 3。

在数据库中连接此关系的最佳或典型示例是什么?

我的用户表有我可以引用的 ID 和用户名,但我试图摆脱数据库中存储的某种列表,这是我唯一的想法, worker a 有工作 (1,2,9)。

最佳答案

实现此目的的常见方法是使用一个额外的表来保存 worker 和工作之间的关系。假设该表名为workers_jobs,将有(至少)列worker_id 和job_id。如果 id 为 15 的 worker 有 id 为 1,3,5 的工作,那么您将创建三行

   worker_id | job_id
15 | 1
15 | 3
15 | 5

对于相反的关系,如果 id 为 2 的工作属于 id 为 2,5,6,8 的 worker ,您的workers_jobs 表将是

    worker_id | job_id
2 | 2
5 | 2
6 | 2
8 | 2

存储逗号分隔值不是一个好主意,并且提供了很好的解释 here

关于php - MySQL多对多关系结构(a可以有多个b,但b也可以有多个a),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26575698/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com