оконная функция, которая игнорирует NULL
| test_id | run_id | WF_value |
------------------------------------------
1 NULL NULL
1 100 1
1 300 2
2 NULL NULL
2 NULL NULL
2 NULL NULL
3 56 1
3 44 2
3 NULL NULL
То есть окно нужно наложить на test_id, начать считать run_id в этом окне, причём run_id is NULL в расчёт брать не нужно.
Пробовал делать через FIRST_VALUE(run_id), но всё равно сводится к тому, что надо оборачивать в ещё один подзапрос или CTE.
Ответы (1 шт):
Автор решения: Mikhail
→ Ссылка
select (case when r.RUN_ID is not null
then row_number() over (partition by (case when r.RUN_ID is not null
then t.test_id else 0 end)
order by r.run_id
)
end) as urun