Partilhar via


VARP (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 a variância estatística da população para todos os valores na expressão especificada.

Transact-SQL convenções de sintaxe

Sintaxe

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

Argumentos

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

DISTINTO
Especifica que cada valor exclusivo é considerado.

expressão
É uma expressão da categoria de tipo de dados numéricos exatos ou aproximados, exceto para o tipo de dados de bits . Funções agregadas e subconsultas não são permitidas.

MAIS ( [ 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 é necessário. Para obter mais informações, consulte Cláusula OVER (Transact-SQL).

Tipos de devolução

flutuar

Observações

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

VARP é uma função determinística quando usada sem as cláusulas OVER e ORDER BY. É não determinístico quando especificado com as cláusulas OVER e ORDER BY. Para obter mais informações, consulte Deterministic and Nondeterministic Functions.

Exemplos

R: Usando VARP

O exemplo seguinte devolve a variância da população para todos os valores bónus na SalesPerson tabela da base de dados AdventureWorks2025.

SELECT VARP(Bonus)  
FROM Sales.SalesPerson;  
GO  

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

B: Usando o VARP

O exemplo a seguir retorna os VARP valores da cota de vendas na tabela dbo.FactSalesQuota. A primeira coluna contém a variância de todos os valores distintos e a segunda coluna contém a variância de todos os valores, incluindo quaisquer valores duplicados.

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

Aqui está o conjunto de resultados.

Distinct_Values   All_Values
----------------  ----------------
158146830494.18   157788848582.94

C. Usando VARP com OVER

O exemplo a seguir retorna os VARP valores da cota de vendas para cada trimestre em um ano civil. Observe que o ORDER BY na cláusula OVER ordena a variância estatística 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,  
       VARP(SalesAmountQuota) OVER (ORDER BY CalendarYear, CalendarQuarter) AS Variance  
FROM dbo.FactSalesQuota  
WHERE EmployeeKey = 272 AND CalendarYear = 2002  
ORDER BY CalendarQuarter;  

Aqui está o conjunto de resultados.

Year  Quarter  SalesQuota              Variance
----  -------  ----------------------  -------------------
2002  1         91000.0000             0.00
2002  2        140000.0000             600250000.00
2002  3         70000.0000             860222222.22
2002  4        154000.0000             1185187500.00

Ver também

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