Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Abfragen der Ergebnismenge einer vorherigen Abfrage

Es gibt mehrere Möglichkeiten, dies zu lösen:

1:Erstellen Sie eine Ansicht aus der ersten Abfrage und führen Sie die zweite Abfrage für die Ansicht aus.

2:Verschachteln Sie beide Abfragen wie folgt:

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

3:Verwenden Sie eine temporäre Tabelle, um die Ergebnismenge der ersten Abfrage zu speichern, wie von wewesthemenace im Kommentare .

4:Verwenden Sie CTE, wie thebreiflabb in der anderen Antwort vorgeschlagen zu diesem Beitrag.

Persönlich würde ich wahrscheinlich die erste oder zweite Option wählen, je nachdem, ob Sie die erste Abfrage auch als eigenständige Abfrage verwenden müssen.