Querying against result of EXEC

Viewed 34

My EXEC:

SET @Sql = "SELECT r.Id FROM Record r where r.Price > 100"

How do I query against the result of @Sql? Ideally something like this:

SELECT * FROM Record r JOIN Patient p 
ON r.Id = p.recordId 
WHERE r.Id IN (EXEC(@Sql))
1 Answers

Maybe this:

SET @Sql = 'SELECT r.Id FROM Record r where r.Price > 100'

CREATE TABLE #DataSource 
(
    [ID] INT
);

INSERT INTO #DataSource ([ID])
EXEC(@SQL);

SELECT * 
FROM Record r 
JOIN Patient p 
    ON r.Id = p.recordId 
WHERE r.Id IN (SELECT [ID] FROM #DataSource);
Related