Megosztás a következőn keresztül:


STDEV (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseFelügyelt Azure SQL-példányAzure Synapse AnalyticsElemzési platformrendszer (PDW)SQL Analytics-végpont a Microsoft FabricbenRaktár a Microsoft FabricbenSQL-adatbázis a Microsoft Fabricben

A megadott kifejezésben szereplő összes érték statisztikai szórását adja vissza.

Transact-SQL szintaxis konvenciók

Szemantika

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

Arguments

ALL
A függvényt minden értékre alkalmazza. ALL az alapértelmezett.

KÜLÖNBÖZŐ
Megadja, hogy minden egyedi érték figyelembe legyen véve.

kifejezés
Számkifejezés. Az aggregált függvények és allekérdezések nem engedélyezettek. Az kifejezés a pontos numerikus vagy közelítő numerikus adattípus kategóriájának kifejezése, kivéve a bitadattípust.

VÉGE ( [ partition_by_clause ] order_by_clause)
partition_by_clause a FROM klauzula által generált eredményhalmazt osztja szétosztásokra, amelyekhez a függvény alkalmazható. Ha nincs megadva, a függvény a lekérdezés eredményhalmazának összes sorát egyetlen csoportként kezeli. order_by_clause határozza meg a művelet végrehajtásának logikai sorrendjét. order_by_clause szükséges. További információ: OVER záradék (Transact-SQL).

Visszatérési típusok

float

Megjegyzések

Ha az STDEV-et minden elemre használják egy SELECT utasításban, az eredményhalmaz minden értéke bekerül a számításba. Az STDEV csak numerikus oszlopokkal használható. A null értékeket figyelmen kívül hagyjuk.

Az STDEV determinisztikus függvény, ha az OVER és ORDER BY klauzulák nélkül használják. Nem determinisztika, ha az OVER és ORDER BY klauzulákkal van megadva. További információ: Determinisztikus és Nemdeterminista függvények.

Példák

V: STDEV használata

A következő példa adja vissza az összes bónuszérték szabványszórását az SalesPerson AdventureWorks2025 adatbázis táblázatában.

SELECT STDEV(Bonus)  
FROM Sales.SalesPerson;  
GO  

Példák: Azure Synapse Analytics and Analytics Platform System (PDW)

B: STDEV használata

A következő példa adja vissza az értékesítési kvóta értékek szabványszóráját a táblázatban dbo.FactSalesQuota. Az első oszlop tartalmazza az összes eltérő érték szórását, a második oszlop pedig minden érték szórását, beleértve az esetleges duplikátumokat is.

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

Itt van az eredmények összessége.

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

C. STDEV használata OVER-lel

A következő példa adja vissza az értékesítési kvóta értékek szabványszóráját minden negyedévre egy naptári év során. Figyeljük meg, hogy az OVER klauzulaban a ORDER BY az STDEV-et rendeli, a SELECT utasítás BY pedig az eredményhalmazt rendeli.

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

Itt van az eredmények összessége.

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

Lásd még:

összesítő függvények (Transact-SQL)
OVER záradék (Transact-SQL)