这就是我想要做的。
这是选择语句
select Id
from tblUsersPokemons
where UserId = 1 and PokemonPlace = 'bag'
现在我想将这些返回的 Id 插入到另一个表中,如下所示:
foreach all returned Ids
insert into tblNpcBattleUsersPokemons values (Id, 1)
我怎样才能做到这一点 ?
这就是我想要做的。
这是选择语句
select Id
from tblUsersPokemons
where UserId = 1 and PokemonPlace = 'bag'
现在我想将这些返回的 Id 插入到另一个表中,如下所示:
foreach all returned Ids
insert into tblNpcBattleUsersPokemons values (Id, 1)
我怎样才能做到这一点 ?
像这样:
insert into tblNpcBattleUsersPokemons
select Id, 1 from tblUsersPokemons where UserId=1 and PokemonPlace='bag'
这可以在单个 sql 调用中完成
insert into tblNpcBattleUsersPokemons (id, [whatever the name of the other column is])
select Id, 1 from tblUsersPokemons where UserId=1 and PokemonPlace='bag'
我在这里使用了速记,因为它不对目标表中列的顺序做出任何假设,这可能会随着时间的推移而改变并使您的插入语句无效。
您可以使用 INSERT...SELECT 语法将 SELECT 检索到的集合插入到另一个现有表中。
例如:
INSERT INTO tblNpcBattleUsersPokemons (Id, Val) -- not sure what the second column name was
SELECT Id FROM tblUsersPokemons WHERE UserID = 1 and PokemonPlace='bag';