Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Punkt końcowy analizy SQL w usłudze Microsoft Fabric
Hurtownia danych w usłudze Microsoft Fabric
Baza danych SQL w usłudze Microsoft Fabric
Zwraca statystyczne odchylenie standardowe populacji dla wszystkich wartości w podanym wyrażeniu.
Transact-SQL konwencje składni
Składnia
-- Aggregate Function Syntax
STDEVP ( [ ALL | DISTINCT ] expression )
-- Analytic Function Syntax
STDEVP ([ ALL ] expression) OVER ( [ partition_by_clause ] order_by_clause)
Arguments
WSZYSTKIE
Stosuje tę funkcję do wszystkich wartości. WSZYSTKO jest domyślne.
ODMIENNY
Określa, że każda unikatowa wartość jest brana pod uwagę.
expression
Jest wyrażeniem liczbowym. Funkcje agregowane i podzapytania nie są dozwolone.
wyrażenie jest wyrażeniem dokładnej kategorii numerycznej lub przybliżonej kategorii danych numerycznych, z wyjątkiem typu danych bitowych .
KONIEC ( [ partition_by_clause ] order_by_clause)
partition_by_clause dzieli zbiór wyników wytworzony przez klauzulę FROM na partycje, do których funkcja jest stosowana. Jeśli nie zostanie określony, funkcja traktuje wszystkie wiersze zestawu wyników zapytania jako pojedynczą grupę.
order_by_clause określa kolejność logiczną, w której jest wykonywana operacja.
order_by_clause jest wymagane. Aby uzyskać więcej informacji, zobacz OVER Clause (Transact-SQL).
Typy zwracane
float
Uwagi
Jeśli STDEVP jest używany do wszystkich elementów w instrukcji SELECT, każda wartość w zbiorze wyników jest uwzględniona w obliczeniu. STDEVP można używać wyłącznie z kolumnami numerycznymi. Wartości zerowe są ignorowane.
STDEVP jest funkcją deterministyczną, gdy używa się bez klauzul OVER i ORDER BY. Jest niedeterministyczna, gdy jest określana klauzulami OVER i ORDER BY. Aby uzyskać więcej informacji, zobacz Funkcje deterministyczne i niedeterministyczne.
Przykłady
O: Korzystanie ze STDEVP
Poniższy przykład zwraca odchylenie standardowe populacji dla wszystkich wartości bonusowych w tabeli SalesPerson bazy AdventureWorks2025.
SELECT STDEVP(Bonus)
FROM Sales.SalesPerson;
GO
Przykłady: Azure Synapse Analytics and Analytics Platform System (PDW)
B: Korzystanie ze STDEVP
Poniższy przykład zwraca STDEVP wartości kwoty sprzedaży w tabeli dbo.FactSalesQuota. Pierwsza kolumna zawiera odchylenie standardowe wszystkich różnych wartości, a druga kolumna zawiera odchylenie standardowe wszystkich wartości, w tym wartości duplikaty.
-- 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;
Oto zestaw wyników.
Distinct_Values All_Values
---------------- ----------------
397676.79 397226.44
C. Używanie STDEVP z OVER
Poniższy przykład zwraca STDEVP wartości kwot sprzedaży za każdy kwartał roku kalendarzowego. Zauważmy, że w ORDER BY klauzuli OVER porządkuje , STDEVP a w ORDER BYSELECT zdaniu uporządkowuje zbiór wyników.
-- 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;
Oto zestaw wyników.
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
Zobacz też
funkcje agregujące (Transact-SQL)
Klauzula OVER (Transact-SQL)