В SQL Server 2012+ можете да използвате lag()
. В SQL Server 2008 можете да използвате корелирана подзаявка или външно приложение. Ето един метод:
select documentid, reference,
(select top 1 documentid
from table t2
where t2.reference = t.reference and
t2.documentid < t.documentid
order by documentid desc
) as LastDocumentId
from table t;