Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

T SQL - Substituição eloquente de Subconsulta Correlacionada


Eu faria isso com um CTE:
WITH Result AS
(
  SELECT Row_Number() OVER (PARTITION BY ItemId, Year
ORDER BY ItemversionId DESC) AS RowNumber
      ,ItemId
      ,ItemversionId
      ,Year
      ,Value
  FROM table
)
SELECT ItemId
  ,ItemversionId
  ,Year
  ,Value
FROM Result
WHERE RowNumber = 1
ORDER BY ItemId, Year