wizy@2020 Ответов: 1

Как я могу получить от и до из одной строки с помощью tsql


У меня есть следующие данные
интервал
1
2
3
4
5

и хотите добиться следующего с помощью tsql
из
0 1
1 2
2 3
3 4
4 5

Что я уже пробовал:

Я пробовал использовать ROW_NUMBER()

выберите ROW_NUMBER () over (order by interval) row_id, interval from mytable

но не могу придумать, как это сделать.

1 Ответов

Рейтинг:
10

Richard Deeming

Предполагая, что вы используете SQL 2012 или более позднюю версию, попробуйте использовать ЗАДЕРЖКА[^]:

SELECT
    IsNull(LAG(interval) OVER (ORDER BY interval), 0) As [from],
    interval As [to]
FROM
    YourTable
ORDER BY
    interval
;


wizy@2020

Спасибо. Я действительно ценю это