Можете ли вы написать один запрос без использования какого-либо предложения - PullRequest
0 голосов
/ 19 мая 2018

Это таблица DATA_TABLE

      Date        Value
01-01-2018        31.64
01-02-2018        32.09
01-03-2018        36.9
   ..              ..

Требуется вывод в одном запросе, как показано ниже

Date - столбец Date, столбец d-1 имеет значение за день до значения,d для конкретного значения даты (01-02-2018), а d + 2 имеет значение следующей даты в DATA_TABLE, которое составляет 36,9

O / P Требуется в одном запросе (даты с субботой и воскресеньем не должны бытьсчитается)

  Date             d-1           d           d+2
01-02-2018        31.64        32.09        36.9 

1 Ответ

0 голосов
/ 19 мая 2018

Вы можете использовать LEAD и LAG здесь:

SELECT
    Date,
    LAG(Value) OVER (ORDER BY Date) "d-1",
    Value,
    LEAD(Value) OVER (ORDER BY Date) "d+2"
FROM DATA_TABLE
...