Comment obtenir des résultats de la procédure stockée #1 dans une table temporaire dans une procédure stockée #2
Je suis en train d'essayer de combiner les résultats de plusieurs procédures stockées dans une seule table temporaire. Les résultats des différentes procédures stockées ont la même structure de colonne. Essentiellement, je voudrais de l'UNION de TOUS les résultats des différentes procédures stockées. Un fait significatif: chacune des procédures stockées crée une table temporaire pour stocker ses données et les résultats de chaque rendements sont basés sur une sélection contre la table temporaire:
create proc SP1
as
.
. <snip>
.
select * from #tmp -- a temporary table
Notant que select * from OPENQUERY(server, 'exec SP1')
ne fonctionne pas si le sélectionner dans le SP1 est contre une table temporaire (voir cette question pour plus de détails), est-il une autre façon pour une autre procédure stockée, SP2, pour obtenir les résultats de l'exécution du SP1 dans une table temporaire?
create proc SP2 as
-- put results of executing SP1 into a temporary table:
.
.
.
REMARQUE: SP1 ne peut pas être modifié (par exemple, pour stocker les résultats dans une table temporaire avec la portée de session).
OriginalL'auteur Tim | 2013-01-12
Vous devez vous connecter pour publier un commentaire.
Créer votre table temporaire telle qu'elle s'adapte à tous les résultats de vos procédures stockées.
En supposant que votre temp. le tableau est appelé "#MySuperTempTable", vous faites quelque chose comme cela...
Cela devrait faire l'affaire.
Absolument. Vous avez maintenant vu mon anal retentiveness quand il s'agit de l'écriture de requêtes SQL.
Ma bête noire est-inserts avec aucun nom de colonne...eh bien si c'est rempli par un select AVEC des noms de colonne. Je vous remercie de votre Anal Retentiveness
OriginalL'auteur Tombatron
Suivantes code ci-dessus dans le style, mais sqlserver n'est pas compialing instructions.
OriginalL'auteur Alpesh Gediya