简体   繁体   English

SQL 2008:根据特定条件插入多行

[英]SQL 2008: Insert multiple rows based on specific criteria

I am trying to clone user permissions. 我正在尝试克隆用户权限。 The permissions are driven from a table with only 2 columns, userid and groupid. 权限由仅包含2列的表(userid和groupid)驱动。 Both are foreign keys. 两者都是外键。

Is it possible to insert multiple rows based on criteria? 是否可以根据条件插入多行? Let's say: 让我们说:

USERID GROUPID USERID GROUPID

1 A 1 A.

1 B 1 B

1 C 1 C

1 D 1个D

I would like to insert rows to give USER 2 the same GROUPS as USER 1. 我想插入行以向USER 2提供与USER 1相同的GROUPS。

Does this get me close? 这让我接近了吗?

INSERT INTO ide_usergroup_assoc (userid, groupid)
VALUES ('USERID I PROVIDE', (SELECT ide_usergroup_assoc.groupid from ide_usergroup_assoc WHERE ide_usergroup_assoc.userid = 'USERID TO BE CLONED'))
insert into ide_usergroup_assoc (userid, groupid)
select 2, groupid
from ide_usergroup_assoc 
where userid = 1

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM