Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:SQL Server
Azure SQL Database
Spravovaná instance Azure SQL
Azure Synapse Analytics
Analytics Platform System (PDW)
Koncový bod analýzy SQL v Microsoft Fabric
Sklad v Microsoft Fabric
Databáze SQL v Microsoft Fabric
Vrátí statistickou odchylku základního souboru pro všechny hodnoty v zadaném výrazu.
Syntaxe
-- Aggregate Function Syntax
VARP ( [ ALL | DISTINCT ] expression )
-- Analytic Function Syntax
VARP ([ ALL ] expression) OVER ( [ partition_by_clause ] order_by_clause)
Argumenty
VŠE
Použije funkci na všechny hodnoty. All je výchozí hodnota.
ODLIŠNÝ
Určuje, že každá jedinečná hodnota se považuje za.
výrazu
Je výraz přesné číselné nebo přibližné kategorie číselného datového typu s výjimkou datového typu bitu . Agregační funkce a poddotazy nejsou povoleny.
KONEC ([ partition_by_clause ] order_by_clause)
partition_by_clause rozdělí sadu výsledků vytvořenou klauzulí FROM na oddíly, na které se funkce použije. 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 se vyžaduje. Další informace naleznete v tématu OVER – klauzule (Transact-SQL).
Návratové typy
plout
Poznámky
Pokud se funkce VARP používá u všech položek příkazu SELECT, každá hodnota v sadě výsledků je zahrnuta do výpočtu. VarP lze použít pouze s číselnými sloupci. Hodnoty null se ignorují.
VARP je deterministická funkce při použití bez klauzulí OVER a ORDER BY. Je nedeterministický, pokud je zadán pomocí klauzulí OVER a ORDER BY. Další informace naleznete v tématu Deterministické a nedeterministické funkce.
Příklady
A: Použití varp
Následující příklad vrací rozptyl populace pro všechny bonusové hodnoty v tabulce SalesPerson databáze AdventureWorks2025.
SELECT VARP(Bonus)
FROM Sales.SalesPerson;
GO
Příklady: Azure Synapse Analytics a Analytický platformový systém (PDW)
B: Použití varp
Následující příklad vrátí VARP hodnoty kvóty prodeje v tabulce dbo.FactSalesQuota. První sloupec obsahuje rozptyl všech jedinečných hodnot a druhý sloupec obsahuje rozptyl všech hodnot včetně duplicitních hodnot.
-- Uses AdventureWorks
SELECT VARP(DISTINCT SalesAmountQuota)AS Distinct_Values, VARP(SalesAmountQuota) AS All_Values
FROM dbo.FactSalesQuota;
Tady je soubor výsledků.
Distinct_Values All_Values
---------------- ----------------
158146830494.18 157788848582.94
C. Použití funkce VARP s funkcemi OVER
Následující příklad vrátí VARP hodnoty kvóty prodeje pro každé čtvrtletí v kalendářním roce. Všimněte si, že klauzule ORDER BY v klauzuli OVER objedná statistickou odchylku a ORDER BY příkazu SELECT nastaví sadu výsledků.
-- 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;
Tady je soubor výsledků.
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
Viz také
agregační funkce (Transact-SQL)
OVER – klauzule (Transact-SQL)