我有三个表, a User table
, aCompany table
和 alinking table
分配用户角色。我正在尝试更新user_role
表,以便其关联公司的所有用户都具有相同的角色。角色表如下所示:
+---------+---------+------------+
| role_id | user_id | company_id |
+---------+---------+------------+
| 2 | 54 | 30 |
| 15 | 1 | 15 |
| 14 | 87 | 32 |
| 15 | 88 | 33 |
| 15 | 106 | 3 |
+---------+---------+------------+
我想在逻辑上做的是这样的
INSERT INTO user_role
(user_id, company_id, role_id)
VALUES (
(SELECT user_id FROM user_role WHERE company_id = ##FIRST COMPANY_ID IN LIST##),
(##LIST OF COMPANY_ID'S##), 2
);
我有一个 company_id 的静态列表,并且我希望在该公司中具有任何角色的所有用户都在此表中分配一个额外的静态 role_id。实现这一目标的最佳方法是什么?我应该看一个存储过程吗?