Requête SQL Server - comment insérer des valeurs sélectionnées dans une autre table
Voici ce que je suis en train de faire.
C'est l'instruction select
select Id
from tblUsersPokemons
where UserId = 1 and PokemonPlace = 'bag'
Maintenant je veux insérer de ceux qui sont retournés Id dans une autre table comme ceci:
foreach all returned Ids
insert into tblNpcBattleUsersPokemons values (Id, 1)
Comment puis-je le faire ?
OriginalL'auteur MonsterMMORPG | 2012-12-10
Vous devez vous connecter pour publier un commentaire.
Comme ceci:
Dépend quelle version de SQL Server que vous avez. Les versions ultérieures ont la
OUTPUT
clause qui devrait fonctionner. Sinon, vous devez utiliser deux instructions SQL (ce qui n'est normalement pas un problème);OriginalL'auteur RBarryYoung
Cela peut être fait en un seul appel sql
J'ai utilisé la main ici, car il ne fait aucune hypothèse quant à l'ordre des colonnes dans la table de destination, qui peut changer au fil du temps et de l'invalider votre instruction insert.
OriginalL'auteur Neil Moss
Vous pouvez insérer le jeu récupérées par un SELECT dans une autre table à l'aide de l'INSERT...SELECT syntaxe.
Par exemple:
OriginalL'auteur BStateham