2017-06-16 43 views
0

我有两个SQL表,用户和索赔:与其他表创建记录的值

Users > Id (PK Identity), Name 
Claims > Id (PK Identity), UserId (FK), Name, Value 

我需要建立对所有用户名=“规划纲要”和值=“XK”索赔。

我得到了每个用户的ID,因为这将是一个要求的用户名:

SELECT Id 
From Users; 

现在每个ID我需要插入一个索赔:

Claim.UserId = User.Id 
Claim.Name = "Plan" 
Claim.Value = "XK" 
+0

你被卡住。对于有5k分的人来说,这看起来似乎有点低级问题?还有别的 - 数十亿记录,锁定? –

回答

2
insert into claims(userid, [name], [value]) 
select userid, 'plan', 'XK' 
from users 
left join claims 
on users.id = claims.userid 
where claims.userid is null 
1

试试这个:

Insert into Claims (userid, name, value)Select id, 'Plan','XK' from Users 
相关问题