Sdílet prostřednictvím


STDEVP (Transact-SQL)

Platí pro:SQL ServerAzure SQL DatabaseSpravovaná instance Azure SQLAzure Synapse AnalyticsAnalytics Platform System (PDW)Koncový bod analýzy SQL v Microsoft FabricSklad v Microsoft FabricDatabáze SQL v Microsoft Fabric

Vrátí statistickou směrodatnou odchylku populace pro všechny hodnoty ve specifikovaném výrazu.

Transact-SQL konvence syntaxe

Syntaxe

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

Arguments

ALL
Aplikuje funkci na všechny hodnoty. VŠE je výchozí.

ODLIŠNÝ
Určuje, že každá jedinečná hodnota se považuje za.

expression
Je číselný výraz. Agregované funkce a poddotazy nejsou povoleny. Výraz je výraz pro přesnou číselnou nebo aproximativní kategorii datových typů, s výjimkou datového typu bitu .

KONEC ([ partition_by_clause ] order_by_clause)
partition_by_clause rozděluje množinu výsledků vytvořenou klauzulí FROM na partce, na které je funkce aplikována. Pokud není zadáno, funkce zachází se všemi řádky sady výsledků dotazu jako s jednou skupinou. order_by_clause určuje logické pořadí, ve kterém se operace provádí. order_by_clause je potřeba. Pro více informací viz OVER Clause (Transact-SQL).

Návratové typy

float

Poznámky

Pokud je STDEVP použit na všechny položky v příkazu SELECT, každá hodnota ve výsledné sadě je zahrnuta do výpočtu. STDEVP lze použít pouze s číselnými sloupci. Nulové hodnoty jsou ignorovány.

STDEVP je deterministická funkce, pokud není použita bez klauzulí OVER a ORDER BY. Je nedeterministická tehdy, když je specifikována s klauzulemi OVER a ORDER BY. Další informace naleznete v tématu Deterministické a nedeterministické funkce.

Examples

Odpověď: Používání STDEVP

Následující příklad vrací směrodatnou odchylku populace pro všechny bonusové hodnoty v tabulce SalesPerson databáze AdventureWorks2025.

SELECT STDEVP(Bonus)  
FROM Sales.SalesPerson;  
GO  

Příklady: Azure Synapse Analytics a Analytický platformový systém (PDW)

B: Používání STDEVP

Následující příklad vrací STDEVP hodnoty prodejní kvóty v tabulce dbo.FactSalesQuota. První sloupec obsahuje směrodatnou odchylku všech různých hodnot a druhý sloupec obsahuje směrodatnou odchylku všech hodnot včetně jakýchkoli duplicitních hodnot.

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

Tady je soubor výsledků.

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

C. Používání STDEVP s OVER

Následující příklad vrací STDEVP hodnoty prodejních kvót za každé čtvrtletí v kalendářním roce. Všimněte si, že v ORDER BY klauzuli OVER řadí a STDEVP ve ORDER BYSELECT výroku pořadí výslednou množinu.

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

Tady je soubor výsledků.

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

Viz také

agregační funkce (Transact-SQL)
Klauzule OVER (Transact-SQL)