WITH t AS
(
SELECT 3512 id, 75.85 len, 6 r_cnt, 455.1 len_val, 0 d_cnt FROM dual
UNION ALL SELECT 3213, 75.85, 3, 227.55, 2 FROM dual
UNION ALL SELECT 6001, 75.85, 2, 151.7, 2 FROM dual
UNION ALL SELECT 7147, 75.85, 2, 151.7, 2 FROM dual
)
SELECT * from t
이런 테이블이 있는데요
id는 키값
len은 기본 값
r_cnt는 기본 갯수
len_val은 len * r_cnt
d_cnt는 실제 갯수
WITH t AS
(
SELECT 3512 id, 75.85 len, 6 r_cnt, 455.1 len_val, 0 d_cnt FROM dual
UNION ALL SELECT 3213, 75.85, 3, 227.55, 2 FROM dual
UNION ALL SELECT 3213, 75.85, 1, 75.85, 2 FROM dual
UNION ALL SELECT 6001, 75.85, 2, 151.7, 2 FROM dual
UNION ALL SELECT 7147, 75.85, 2, 151.7, 2 FROM dual
)
SELECT * from t
이런 결과값을 만들고 싶은데 도통 방법을 모르겠습니다.
d_cnt가 0은 무시하고
d_cnt 보다 r_cnt가 큰 값에 한해서 분리를 하고 싶은것입니다.
분리한 갯수에 따라 len_val는 다시 계산하려고 합니다.
염치없지만 부탁드립니다.
|