Comme il n'y a que deux lignes entre la ligne actuelle et celle à partir de laquelle vous souhaitez obtenir les données "historiques", pourriez-vous utiliser des variables pour stocker temporairement les données en utilisant quelque chose comme :
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;
C'est une solution très désordonnée mais je pense qu'elle fera l'affaire. Peut-être existe-t-il un moyen d'empêcher l'affichage des variables, je ne l'ai pas étudié jusque-là.