Partilhar via


STDEV (Transact-SQL)

Aplica-se a:SQL ServerBase de Dados SQL do AzureInstância Gerida do Azure SQLAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)Ponto de Extremidade de Análise SQL no Microsoft FabricArmazém no Microsoft FabricBase de Dados SQL no Microsoft Fabric

Devolve o desvio padrão estatístico de todos os valores na expressão especificada.

Transact-SQL convenções de sintaxe

Sintaxe

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

Arguments

TODOS OS
Aplica a função a todos os valores. ALL é o padrão.

DISTINTO
Especifica que cada valor exclusivo é considerado.

expressão
É uma expressão numérica. Funções agregadas e subconsultas não são permitidas. Expressão é uma expressão do tipo de dado numérico exato ou numérico aproximado, exceto para o tipo de dado bit .

TERMINADO ( [ partition_by_clause ] order_by_clause)
partition_by_clause divide o conjunto de resultados produzido pela cláusula FROM em partições às quais a função é aplicada. Se não for especificada, a função trata todas as linhas do conjunto de resultados da consulta como um único grupo. order_by_clause determina a ordem lógica em que a operação é executada. order_by_clause é obrigatório. Para obter mais informações, consulte Cláusula OVER (Transact-SQL).

Tipos de devolução

float

Observações

Se STDEV for usado em todos os itens de uma instrução SELECT, cada valor do conjunto de resultados é incluído no cálculo. O STDEV pode ser usado apenas com colunas numéricas. Os valores nulos são ignorados.

STDEV é uma função determinística quando usada sem as cláusulas OVER e ORDER BY. É não determinista quando especificado com as cláusulas OVER e ORDER BY. Para mais informações, consulte Funções Determinísticas e Não Determinísticas.

Examples

R: Utilização do STDEV

O exemplo seguinte devolve o desvio padrão para todos os valores bónus na SalesPerson tabela da base de dados AdventureWorks2025.

SELECT STDEV(Bonus)  
FROM Sales.SalesPerson;  
GO  

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

B: Utilização do STDEV

O exemplo seguinte devolve o desvio padrão dos valores da quota de vendas na tabela dbo.FactSalesQuota. A primeira coluna contém o desvio padrão de todos os valores distintos e a segunda coluna contém o desvio padrão de todos os valores, incluindo quaisquer valores duplicados.

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

Aqui está o conjunto de resultados.

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

C. Usar STDEV com OVER

O exemplo seguinte devolve o desvio padrão dos valores das quotas de vendas para cada trimestre de um ano civil. Note que o ORDER BY na cláusula OVER ordena o STDEV e o ORDER BY da instrução SELECT ordena o conjunto de resultados.

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

Aqui está o conjunto de resultados.

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

Ver também

Funções agregadas (Transact-SQL)
Cláusula OVER (Transact-SQL)