Php 在同一列中存储多个ID?

Php 在同一列中存储多个ID?,php,mysql,sql,pdo,sqldatatypes,Php,Mysql,Sql,Pdo,Sqldatatypes,是否可以在引用另一个表中ID的表列中存储ID数组,以便执行select查询并确定特定ID是否在该列中 下面的示例场景 我有3张这样的桌子: Table: tab_groups with Columns: id, name Table: tab_users with Columns: id, name, groups Table: tab_forums with Columns: id, title, req_groups 一个用户可以属于多个组,其所属组的ID存储在“组”列中 一个论坛可以指定

是否可以在引用另一个表中ID的表列中存储ID数组,以便执行select查询并确定特定ID是否在该列中

下面的示例场景

我有3张这样的桌子:

Table: tab_groups with Columns: id, name
Table: tab_users with Columns: id, name, groups
Table: tab_forums with Columns: id, title, req_groups
一个用户可以属于多个组,其所属组的ID存储在“组”列中

一个论坛可以指定多个必需的组,其ID存储在req_组中。要查看论坛,用户必须至少属于一个与至少一个必需组匹配的组

我应该如何存储groups和req_groups列,以便稍后执行SELECT查询以检查用户是否属于与查看论坛所需的组ID相匹配的组

另外,我如何更新这些列以包含新ID或删除旧ID

目前,我有一个非常低效的方法,将它们存储为字符串,并使用分隔符(如1,2,3,4),然后在PHP中拆分它们,并在循环中进行比较检查


对于更新,我只需检查值是否存在,并将其添加到字符串中。

创建另一个名为UserGroup的表,每个用户一行,每个组一行。这称为连接表。不要将值存储在单个列中。不要这样存储数据,这只会给您带来问题…请接受Gordon和Jarl的建议。关于堆栈溢出,有成百上千的问题,程序员认为在一列中存储多个值是一个好主意,并且发现自己正在与越来越绝望、深奥和难以管理的查询进行斗争。您可能想了解一下,特别是我是否需要创建两个连接表?一个用于用户和组之间的关系,另一个用于论坛和组之间的关系?