STDEV (Transact-SQL)

Aplica-se a:SQL ServerBase de Dados SQL do AzureAzure SQL Managed InstanceAzure Synapse AnalyticsEndpoint 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

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