select year,
month ,
d.PROD_ID,
T.CUSTOMER_ID,
SUM(CASE WHEN D.OP_TYPE = 1 THEN d.qty END) EARNED,
SUM(CASE WHEN D.OP_TYPE = 2 THEN d.qty END) SPEND
FROM TXN_HEADER T ,
TXN_DETAIL d ,
CUSTOMER A,
PRODUCT e
WHERE T.AMOUNT > 0
AND A.TYPE = 0
AND T.CUSTOMER_ID = A.CUSTOMER_ID
AND T.TXN_PK = D.TXN_PK
and d.PROD_ID = e.PROD_ID
and e.unit = 0
group by year, month ,d.PROD_ID, T.CUSTOMER_ID
ORDER BY 1,2,3,4
출력은 다음과 같다 (여기서 열고 쿼리 생성되지 개폐하지만 그 쿼리에서이어야 필요) I는 상기와 출력을 생성하는 데 필요한Oracle 시작 및 종료 균형 - SQL 또는 PL/SQL이 필요합니까?
YEAR MONTH PROD CUSTOMER OPENING EARNED SPEND CLOSING
---- ----- ---- -------- ------- ------ ----- -------
2012 8 548 12033 0 8 2 6
2012 9 509 12033 0 24 0 24
2012 9 509 12047 0 14 0 14
2012 9 548 12033 6 1 0 7
2012 9 548 12047 0 1 0 1
. 여기서 PROD_ID, CUSTOMER_ID는 영업일로 채워지는 이전 마감 잔고를 동적으로 현명하게 계산하고 월별, 고객 별, 제품 별 마감 잔고 (여는 + 적립 된 지출)를 계산합니다. SQL로 작성하거나 PL/SQL로 갈 필요가 있습니까?
귀하의 대문자 잠금 키 걸이입니까? UN-STICK IT, 제발. –
실수로 인해 .. 죄송합니다. – YesYeeYen