select
r1.id,
r1.addTime,
r1.weight,
(r1.weight - (select weight from table where addTime = MAX(r2.addTime))) as weightGain
from table r1 left outer join table r2 on r1.addTime > r2.addTime
where r1.DeleteMark = '0'
GROUP BY r1.addTime
ORDER BY r1.addTime;