Получение предшествующих данных (LAG)
Определяет записи результирующей выборки данных, предшествующие текущей записи выборки данных.
Спецификация
::=::=::=Синтаксические правила
-
<Выражение>может быть столбцом или выражением. -
Если
<смещение>не задано, по умолчанию используется 1. -
<Значимые выражения>в<OVER-спецификации>задают столбцы выборки, по которым выполняется разбивка выборки на интервалы агрегирования. -
<Имена столбцов>в<ORDER BY-спецификации>задают имена ранжируемых столбцов.
Общие правила
-
Функция предоставляет доступ к записям, предшествующим на заданное
<смещение>от текущей записи интервала агрегирования, к которому применена функция (см. раздел «OVER-спецификация»). -
Если значение
<выражения>с учетом<смещения>выходит за пределы интервала агрегирования, или в качестве<смещения>указано отрицательное или дробное число, возвращается<стандартное значение>.
Пример
select make, lag(make, 2, 'Нет данных') as make_lag from auto where personid < 5; MAKE MAKE_LAG ---- -------- | FORD | Нет данных | | ALPINE | Нет данных | | AMERICAN MOTORS | FORD | | MASERATI | ALPINE |