Отслеживание изменений в столбце - PullRequest
1 голос
/ 12 марта 2019

Привет. Я пытался отслеживать отклонения от исходного значения в столбце улья.Например:

column 1  tracking_column
6          0
6          0
6          0
5          -1
6          0
6          0
7          1
8          2

Я использую функцию задержки, но это только позволяет мне отслеживать изменения от одной строки к другой и не ведет счетчик пробежек.Поэтому, когда число увеличивается с 6 до 7, а затем до 8. отставание или опережение, я не думаю, что в этом случае сработает.

Любые советы приветствуются.Приветствия

1 Ответ

1 голос
/ 12 марта 2019

Я думаю, что вы хотите first_value():

select col1, (first_value(col1) over (order by ?) - col1) as diff
from t;

? является заполнителем для столбца, который определяет порядок таблицы.

Вы также можете использовать cross join:

select t.col1, (t.col1 - t1.col1) as diff
from t cross join
     (select t.*
      from t
      order by ?
      limit 1
     ) t1;
...