LAST_VALUE()

Returns the last value in an ordered set of values.

Signature

LAST_VALUE ( [ scalar_expression ] ) [ IGNORE NULLS | RESPECT NULLS ]
    OVER ( [ partition_by_clause ] order_by_clause [ rows_range_clause ] )

Parameters

  • scalar_expression — The value to be returned. *scalar_expression* can be a column, subquery, or other expression that results in a single value. Other analytic functions aren't permitted.

Examples

SELECT product, amount, LAST_VALUE(product) OVER (ORDER BY amount ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) AS dearest FROM dbo.orders;
product                                  amount       dearest
---------------------------------------- ------------ ----------------------------------------
cable                                           15.00 monitor
mouse                                           27.75 monitor
keyboard                                        49.50 monitor
keyboard                                        99.00 monitor
monitor                                        219.00 monitor
monitor                                        438.00 monitor

Run against SQL Server 16.0.4265.3 on 2026-09-13. This is the output we got, not the documentation’s.

Available on

  • SQL Server 2017 and later
  • Azure SQL Database
  • Azure SQL Managed Instance
  • Azure Synapse Analytics
  • Analytics Platform System (PDW)
  • Microsoft Fabric warehouse
  • Fabric SQL database

Signature and description adapted from the Microsoft SQL documentation, used under the CC BY 4.0. SQL Server and Azure are trademarks of the Microsoft group of companies. This page is not affiliated with Microsoft.