phono님 그럼 이것도 가능한지요?
테이블 구조나 프로세스를 지금 바꾸기에는 힘들어서
쿼리라도 가능 한지 궁금해서요.
with 외상(member, date, credit_amount) as (
select '50000211', '2010-02-12', 13000 union all
select '50000211', '2009-10-01', 17000 union all
select '50000211', '2009-01-11', 34000
)
, 현잔액(member, date, deposite_amount) as (
select '50000211', '2010-04-07', 18000
)
에서 단순히 피봇을 사용하지 않고 외상(회원 일자별로 여러개의 데이터가 조회)
의 제일 큰 날짜인 '2010-02-12' 과 현잔액(회원별 한개만 조회) '2010-04-07'(현재일자기준)를
비교하여 외상의 제일 큰 날짜 금액이 크다면 조회가 안되고...
작다면 '2010-02-12' 일짜에 13000원이 조회되고 다음으로 18000 - 13000 를 하여
남은 5000원에 대해서는 그 다음 큰 날짜인 '2009-10-01' 의 17000과 비교하여
작다면 남은 5000원이 '2009-10-01' 날짜에 조회 가능 한지요???
ps) 당연히 크다면 그 다음 날짜인 '2009-01-11' 과 남은 금액으로 비교 하겠지요..
member date amt_amount
20000211 2010-02-12 13000
20000211 2009-10-01 5000
-- 좀 난해 한지 모르겠지만 .. 아직 해결이 잘 안되서요...
지금 심정이 지프라기라도 잡고 싶은 심정이어서요...
일단 제가 인터넷 검색해보니 WITH 구문으로 생성된 테이블은 대부분 단일 테이블 기능만 되는것 같은데요...
지금 LEE.JS 님께서 구현하고 싶으신것은 WITH로 가상의 외상테이블과 현잔액 테이블을 만들고 싶으신것 같은데..,
일단 해당 SQL버전의 헬프를 참고하세요.
그리고 해당 테이블들의 이용목적이나, 구현하고자 하는 목적을 명시 해 주셔야 많은 분들이 도움을 줄수 있을것 같네요..
이렇게 적어 놓으시면 LEE.JS님만 이해가 갈뿐 LEE,JS님의 업무를 전혀 모르는 사람은 모르겠지요?
그나저나 저런기능이 WITH 라는 기능이 있다니.. 많이 좋아졌네요.. ^^