안녕하세요
현재 윈도우 함수를 사용하여 데이터를 조회하면 될 것도 같은데
어떤식으로 쿼리를 짜야 할지 막막해서 질문 드려요
아래와 같은 데이터가 존재하는데 맨밑 하단에 있는 '최종구할값' 컬럼의 금액을 구하고 싶어요
amt컬럼의 금액은 처음 조회할 1번의 amt 값을 추출하고 첫번재 금액으로 flag값이 없는 로우까지 사용
플래그가 O가 존재하면 그 금액으로 다음 O플래그가 나올때까지 사용 해야 해요
어떤식으로 풀어야 할지 막막해요
도움 부탁드려요
with t as (
select 1 num, '3800' amt, '' flag from dual union all
select 2, '3800','' from dual union all
select 3, '3500','O' from dual union all
select 4, '3800',''from dual union all
select 5, '3900','O' from dual union all
select 6, '3800','' from dual
)
select*
from t;
num amt flag 최종구할값
1 3800 3800
2 3800 3800
3 3500 O 3500
4 3800 3500
5 3900 O 3900
6 3800 3900