Я занимаюсь некоторыми исследованиями по этому вопросу на некоторое время, и благодаря решению, опубликованному в другой теме, я вплотную подошел к решению этой проблемы.Вычисление различий с SQL
Я пытаюсь получить изменения в столбце данных: строка (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
Как вы можете видеть, разница не рассчитывается в течение первого апреля (остальные значения просто прекрасны). То же самое происходит и с 1-го числа каждого месяца.
Я предполагаю, что есть что-то делать с [и tt1.date-tt2.date = 1], но я не могу понять, что именно.
Спасибо за вашу помощь заранее!
Благодарим за решение. Он отлично работает, мне нужно было добавить «.». to tt2.amount, чтобы избежать синтаксической ошибки и изменить вычитание на tt2.amount - tt1.amount. – user2581135
спасибо, я исправил ответ –