Функция агрегации MySQL для суммирования различий между строками - PullRequest
3 голосов
/ 11 октября 2011

У меня есть эта маленькая таблица MySQL:

+----+-------+
| id | value |
+----+-------+
|  1 |  1240 |
|  2 |  1022 |
|  3 |   802 |
| .. |    .. |
+------+-----+

Я ищу sql-запрос, суммирующий разницу между строками:

разница строк 1 и 2 + разница строк 2 и 3 + ...

это возможно с sql?

1 Ответ

3 голосов
/ 11 октября 2011

Конечно! Ваш запрос будет выглядеть примерно так:

SELECT a.id, 
       b.VALUE - a.VALUE difference 
FROM   mytable a 
       JOIN mytable b 
         ON b.id = a.id + 1 

Идея состоит в том, чтобы объединить таблицу с самим смещением на одну строку - тогда вы можете выполнить математику со значениями, которые изначально были в соседних строках.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...