Freigeben über


Unterabfragen anstelle von Ausdrücken

In Transact-SQL kann eine Unterabfrage überall dort in SELECT-, UPDATE-, INSERT- und DELETE-Anweisungen verwendet werden, wo auch ein Ausdruck verwendet werden kann. Eine Ausnahme stellen ORDER BY-Listen dar.

Das folgende Beispiel veranschaulicht, wie Sie diese Erweiterung verwenden können. Diese Abfrage ermittelt die Preise aller Mountainbike-Produkte, ihren Durchschnittspreis sowie die Differenz zwischen dem Preis jedes einzelnen Mountainbikes und dem Durchschnittspreis.

USE AdventureWorks;
GO
SELECT Name, ListPrice, 
(SELECT AVG(ListPrice) FROM Production.Product) AS Average, 
    ListPrice - (SELECT AVG(ListPrice) FROM Production.Product)
    AS Difference
FROM Production.Product
WHERE ProductSubcategoryID = 1

Siehe auch

Konzepte

Arten von Unterabfragen

Hilfe und Informationen

Informationsquellen für SQL Server 2005