私はしばらくの間、このテーマについていくつかの調査を行ってきましたが、別のトピックに投稿された解決策のおかげで、この問題の解決に近づきました.
データ列の変更を取得しようとしています: 行(n) - 行(n-1)
update Table tt1
left outer JOIN Table tt2
on tt1.name = tt2.name
and tt1.date-tt2.date=1
set tt1.delta = (tt1.amount-ifnull(tt2.amount, tt1.amount));
出力は
Date | Value | Delta
2013-03-30| 38651 | 393
2013-03-31| 39035 | 384
2013-04-01| 39459 | 0
2013-04-02| 39806 | 347
ご覧のとおり、4 月 1 日の差は計算されません (残りの値は問題ありません)。毎月 1 日も同様です。
私の推測では、[and tt1.date-tt2.date=1] と何か関係があると思いますが、正確にはわかりません。
事前にご協力いただきありがとうございます。