Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come è possibile eseguire un'iterazione sui risultati della stored procedure dall'interno di un'altra stored procedure ....senza cursori?

Questo potrebbe non essere il più efficiente, ma vorrei creare una tabella temporanea per contenere i risultati del processo memorizzato e quindi utilizzarlo in un join rispetto alla tabella di destinazione. Ad esempio:

CREATE TABLE #t (uniqueid int)
INSERT INTO #t EXEC p_YourStoredProc

UPDATE TargetTable 
SET a.FlagColumn = 1
FROM TargetTable a JOIN #t b 
    ON a.uniqueid = b.uniqueid

DROP TABLE #t