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

Interrogazione del set di risultati di una query precedente

Esistono diversi modi per risolvere questo problema:

1:crea una vista dalla prima query ed esegui la seconda query sulla vista.

2:annida entrambe le query, in questo modo:

SELECT DISTINCT [Name]
FROM (
  SELECT [Name] 
  FROM table 
  WHERE some Criteria
) As InnerQuery

3:utilizzare una tabella temporanea per memorizzare il set di risultati della prima query come suggerito da wewesthemenace nel commenti .

4:utilizzare CTE come suggerito thebreiflabb nell'altra answer a questo post.

Personalmente, probabilmente sceglierei la prima o la seconda opzione, a seconda se è necessario utilizzare anche la prima query come stand alone.