Como existem apenas duas linhas entre a atual e aquela de onde você deseja obter os dados 'históricos', você poderia usar variáveis para armazenar os dados temporariamente usando algo como:
set @oldid0=999999;
set @oldid1=999999;
set @oldid2=999999;
select @oldid0:[email protected],@oldid1:[email protected],@oldid2:=id, value/@oldid0 from table order by id asc;
É uma solução muito desordenada, mas acho que vai fazer o trabalho. Talvez haja alguma maneira de impedir que as variáveis sejam exibidas, eu não pesquisei até agora.