gpt4 book ai didi

php - 返回指定为逗号分隔值的组中的所有用户

转载 作者:行者123 更新时间:2023-11-29 14:15:57 26 4
gpt4 key购买 nike

我有以下两个表场景:

users
id groups
1 1,2,3
2 2,3
3 1,3
4 3

groups
id
1
2
3

例如,如何返回属于组 2 和组 1 的所有用户的 ID?我是否应该研究 join、辅助 group_membership 表或函数来分隔逗号分隔的组 ID 以获得如下内容:

group_membership
user_id group_id
1 1
1 2
1 3
2 2
2 3
... ...

最佳答案

用户和组之间应该具有多对多关系(这意味着一个用户可以属于多个组,一个组可以容纳多个用户)。

您可以通过使用 3 个表来实现这一点:

  • 用户 - 描述用户信息。
  • - 描述组信息。
  • user_groups - 描述哪些用户属于哪些组。

user_groups中,您应该只有2列,user_idgroup_id,每行是属于单个组的单个用户,两侧都允许重复。

您的示例翻译为:

user_id   group_id
1 1
1 2
1 3
2 2
2 3
3 1
3 3
4 3

然后,就可以非常轻松地查询特定组中的所有用户以及用户所在的所有组。

这个过程也称为Database Normalization

关于php - 返回指定为逗号分隔值的组中的所有用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12664657/

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