STDEV (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalysplattformssystem (PDW)SQL-analysslutpunkt i Microsoft FabricLager i Microsoft FabricSQL-databas i Microsoft Fabric

Returnerar den statistiska standardavvikelsen för alla värden i det angivna uttrycket.

Transact-SQL syntaxkonventioner

Syntax

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

Arguments

ALL
Applicerar funktionen på alla värden. ALLT är standard.

SÄRSKILD
Anger att varje unikt värde beaktas.

uttryck
Är ett numeriskt uttryck. Aggregerade funktioner och delfrågor är inte tillåtna. uttryck är ett uttryck av den exakta numeriska eller approximativa numeriska datatypkategorin, förutom bitdatatypen .

ÖVER ( [ partition_by_clause ] order_by_clause)
partition_by_clause delar in resultatmängden som produceras av FROM-satsen i partitioner där funktionen tillämpas. Om det inte anges behandlar funktionen alla rader i frågeresultatuppsättningen som en enda grupp. order_by_clause avgör i vilken logisk ordning åtgärden utförs. order_by_clause krävs. Mer information finns i OVER-satsen (Transact-SQL).

Returtyper

float

Anmärkningar

Om STDEV används på alla objekt i en SELECT-sats inkluderas varje värde i resultatuppsättningen i beräkningen. STDEV kan endast användas med numeriska kolumner. Nollvärden ignoreras.

STDEV är en deterministisk funktion när den används utan klausulerna OVER och ORDER BY. Den är icke-deterministisk när den specificeras med OVER- och ORDER BY-klausulerna. Mer information finns i Deterministiska och nondeterministiska funktioner.

Examples

S: Att använda STDEV

Följande exempel återger standardavvikelsen för alla bonusvärden i SalesPerson tabellen i AdventureWorks2025-databasen.

SELECT STDEV(Bonus)  
FROM Sales.SalesPerson;  
GO  

Exempel: Azure Synapse Analytics and Analytics Platform System (PDW)

B: Att använda STDEV

Följande exempel återger standardavvikelsen för försäljningskvotvärdena i tabellen dbo.FactSalesQuota. Den första kolumnen innehåller standardavvikelsen för alla olika värden och den andra kolumnen innehåller standardavvikelsen för alla värden inklusive eventuella dubblettvärden.

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

Här är resultatet.

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

C. Att använda STDEV med OVER

Följande exempel visar standardavvikelsen för försäljningskvotvärdena för varje kvartal under ett kalenderår. Observera att ORDER BY i OVER-klausulen ordnar STDEV och ORDER BY i SELECT-satsen ordnar resultatuppsättningen.

-- 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;  

Här är resultatet.

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

Se även

Aggregerade funktioner (Transact-SQL)
OVER-klausul (Transact-SQL)