| description | Analytic Functions (Transact-SQL) | |
|---|---|---|
| title | Analytic Functions (Transact-SQL) | Microsoft Docs | |
| ms.custom | ||
| ms.date | 07/24/2017 | |
| ms.prod | sql | |
| ms.prod_service | database-engine, sql-database, sql-data-warehouse, pdw | |
| ms.reviewer | ||
| ms.technology | t-sql | |
| ms.topic | reference | |
| dev_langs |
|
|
| ms.assetid | 60fbff84-673b-48ea-9254-6ecdad20e7fe | |
| author | cawrites | |
| ms.author | chadam | |
| monikerRange | >=aps-pdw-2016||=azuresqldb-current||=azure-sqldw-latest||>=sql-server-2016||>=sql-server-linux-2017||=azuresqldb-mi-current |
[!INCLUDE sql-asdb-asdbmi-asa-pdw]
SQL Server supports these analytic functions:
- CUME_DIST (Transact-SQL)
- FIRST_VALUE (Transact-SQL)
- LAG (Transact-SQL)
- LAST_VALUE (Transact-SQL)
- LEAD (Transact-SQL)
- PERCENT_RANK (Transact-SQL)
- PERCENTILE_CONT (Transact-SQL)
- PERCENTILE_DISC (Transact-SQL)
Analytic functions calculate an aggregate value based on a group of rows. Unlike aggregate functions, however, analytic functions can return multiple rows for each group. Use analytic functions to compute moving averages, running totals, percentages or top-N results within a group.