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


STDEVP (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 populáció statisztikai standardszórását adja vissza minden meghatározott kifejezés értékére.

Transact-SQL szintaxis konvenciók

Szemantika

-- Aggregate Function Syntax   
STDEVP ( [ ALL | DISTINCT ] expression )  
  
-- Analytic Function Syntax   
STDEVP ([ 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 STDEVP-t minden elemre használják egy SELECT utasításban, az eredményhalmaz minden értéke bekerül a számításba. Az STDEVP csak numerikus oszlopokkal használható. A null értékeket figyelmen kívül hagyjuk.

Az STDEVP 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: STDEVP használata

Az alábbi példa adja vissza a populáció szabványszóráját az összes bónuszértékre az SalesPerson AdventureWorks2025 adatbázis táblázatában.

SELECT STDEVP(Bonus)  
FROM Sales.SalesPerson;  
GO  

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

B: STDEVP használata

Az alábbi példa a táblázatban STDEVPszereplő értékesítési kvótaértékeket adja dbo.FactSalesQuota vissza. 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 STDEVP(DISTINCT SalesAmountQuota)AS Distinct_Values, STDEVP(SalesAmountQuota) AS All_Values  
FROM dbo.FactSalesQuota;SELECT STDEVP(DISTINCT Quantity)AS Distinct_Values, STDEVP(Quantity) AS All_Values  
FROM ProductInventory;  

Itt van az eredmények összessége.

Distinct_Values   All_Values  
----------------  ----------------  
397676.79         397226.44

C. STDEVP használata OVER-rel

A következő példa adja vissza STDEVP az értékesítési kvóta értékeit minden negyedévre egy naptári év során. Figyeljük meg, hogy ORDER BY a mondatban a rendelő és OVERSTDEVPORDER BY az utasítás az eredményhalmazt sorolja.SELECT

-- Uses AdventureWorks  
  
SELECT CalendarYear AS Year, CalendarQuarter AS Quarter, SalesAmountQuota AS SalesQuota,  
       STDEVP(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             0.00  
2002  2        140000.0000             24500.00  
2002  3         70000.0000             29329.55  
2002  4        154000.0000             34426.55

Lásd még:

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