Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come trovare il quinto stipendio più alto in una singola query in SQL Server

In SQL Server 2005 e 2008, crea una query di selezione secondaria classificata, quindi aggiungi una clausola where in cui il rango =5.

select
  *
from
(
  Select
    SalesOrderID, CustomerID, Row_Number() Over (Order By SalesOrderID) as RunningCount
  From
    Sales.SalesOrderHeader
  Where
    SalesOrderID > 10000
  Order By
    SalesOrderID 
) ranked
where 
  RunningCount = 5