我有一张表:users_group
id | group_id | user_ids
---|----------|---------
1 | 1 | 3
2 | 1 | 2
3 | 3 | 2
4 | 2 | 3
5 | 2 | 4
6 | 2 | 2
条件是user_ids只能插入一次。但在上述情况下,它是为多个 group_id 插入的。
我正在使用此查询在 foreach 循环中插入 users_id 字段: 插入 users_group (group_id, user_ids) VALUES(2,3)
如何防止插入重复的 user_ids
有没有更好的查询方式?
最佳答案
是的,有更好的方法来解决这个问题,但解决方案并不意味着查询。
您应该创建一个名为 user_id
的新列,而不是 user_id
列,并像这样添加数据:
id | group_id | user_id
1 | 1 | 3
2 | 1 | 4
3 | 2 | 3
4 | 2 | 4
5 | 2 | 2
6 | 3 | 2
7 | 3 | 3
8 | 3 | 4
这称为多对多
关系,它使一切变得更容易。之后你只需要 JOIN 表;
关于php - 检查表中是否存在逗号分隔值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32649354/