STDEV (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Analytics-Endpunkt in Microsoft FabricWarehouse in Microsoft Fabric

Gibt die statistische Standardabweichung aller Werte im angegebenen Ausdruck zurück.

Transact-SQL-Syntaxkonventionen

Syntax

-- Aggregate Function Syntax   
STDEV ( [ ALL | DISTINCT ] expression )  
  
-- Analytic Function Syntax   
STDEV ([ ALL ] expression) OVER ( [ partition_by_clause ] order_by_clause)  

Hinweis

Informationen zum Anzeigen der Transact-SQL-Syntax für SQL Server 2014 (12.x) und früher finden Sie unter Dokumentation zu früheren Versionen.

Argumente

ALL
Wendet die Funktion auf alle Werte an. ALL ist die Standardeinstellung.

DISTINCT
Gibt an, dass jeder eindeutige Wert berücksichtigt wird.

expression
Ein numerischer Ausdruck. Aggregatfunktionen und Unterabfragen sind nicht zulässig. Bei expression handelt es sich um einen Ausdruck der genauen numerischen oder ungefähren numerischen Datentypkategorie, mit Ausnahme des bit-Datentyps.

OVER ( [ partition_by_clause ] order_by_clause)
partition_by_clause unterteilt das von der FROM-Klausel erzeugte Resultset in Partitionen, auf die die Funktion angewendet wird. Wird dies nicht angegeben, verarbeitet die Funktion alle Zeilen des Abfrageresultsets als einzelne Gruppe. order_by_clause bestimmt die logische Reihenfolge, in der der Vorgang ausgeführt wird. order_by_clause ist erforderlich. Weitere Informationen finden Sie unter OVER-Klausel (Transact-SQL).

Rückgabetypen

float

Hinweise

Falls STDEV für alle Elemente einer SELECT-Anweisung verwendet wird, werden alle Werte im Resultset in die Berechnung eingeschlossen. STDEV kann nur bei numerischen Spalten verwendet werden. NULL-Werte werden ignoriert.

STDEV ist eine deterministische Funktion, wenn sie ohne die OVER- und ORDER BY-Klauseln angegeben wird. Sie ist nicht deterministisch, wenn sie mit den OVER- und ORDER BY-Klauseln angegeben wird. Weitere Informationen finden Sie unter Deterministic and Nondeterministic Functions.

Beispiele

A: Verwenden von STDEV

Im folgenden Beispiel wird die Standardabweichung für alle Bonuswerte in der SalesPerson-Tabelle der AdventureWorks2022-Datenbank zurückgegeben.

SELECT STDEV(Bonus)  
FROM Sales.SalesPerson;  
GO  

Beispiele: Azure Synapse Analytics und Analytics-Plattformsystem (PDW)

B: Verwenden von STDEV

Das folgende Beispiel gibt die Standardabweichung für alle Sollvorgabenwerte für den Verkauf in der dbo.FactSalesQuota-Tabelle zurück. Die erste Spalte enthält die Standardabweichung aller eindeutigen Werte. Die zweite Spalte enthält die Standardabweichung aller Werte, einschließlich aller doppelten Werte.

-- Uses AdventureWorks  
  
SELECT STDEV(DISTINCT SalesAmountQuota)AS Distinct_Values, STDEV(SalesAmountQuota) AS All_Values  
FROM dbo.FactSalesQuota;  

Hier ist das Resultset.

Distinct_Values   All_Values
----------------  ----------------
398974.27         398450.57

C. Verwenden von STDEV mit OVER

Das folgende Beispiel gibt für jedes Quartal eines Kalenderjahrs die Standardabweichung der Sollvorgabenwerte für den Verkauf zurück. Beachten Sie, dass über die Anweisung ORDER BY in der OVER-Klausel der STDEV und ORDER BY über die Anweisung SELECT ein Resultset angefordert wird.

-- Uses AdventureWorks  
  
SELECT CalendarYear AS Year, CalendarQuarter AS Quarter, SalesAmountQuota AS SalesQuota,  
       STDEV(SalesAmountQuota) OVER (ORDER BY CalendarYear, CalendarQuarter) AS StdDeviation  
FROM dbo.FactSalesQuota  
WHERE EmployeeKey = 272 AND CalendarYear = 2002  
ORDER BY CalendarQuarter;  

Hier ist das Resultset.

Year  Quarter  SalesQuota              StdDeviation
----  -------  ----------------------  -------------------
2002  1         91000.0000             null
2002  2        140000.0000             34648.23
2002  3         70000.0000             35921.21
2002  4        154000.0000             39752.36

Weitere Informationen

Aggregatfunktionen (Transact-SQL)
OVER-Klausel (Transact-SQL)