Notice
Recent Posts
Recent Comments
Link
투케이2K
34. (Oracle/오라클) RANGE와 ROWS를 사용해 그룹별 범위 합계 구하기 실시 본문
/* =========================== */
[ 개발 환경 설정 ]
개발 툴 : Toad
개발 언어 : Oracle
/* =========================== */
/* =========================== */
[소스 코드]
/*
[RANGE와 ROWS를 사용해 그룹별 범위 합계 구하기 실시]
1. range - 그룹별 마지막합계를 보여줍니다
2. rows - 그룹별 순차적으로 합계를 보여줍니다
3. ex - range (36 값이 2개가 있는 경우 2개합계를 더한 값인 72를 표시해줍니다)
rows (36 값이 2개가 있는 경우 순차적으로 36, 72 합계를 표시해줍니다)
*/
/*[range 그룹별 합계 출력]*/
select T_NAME, T_AGE,
sum(T_AGE) over (partition by T_AGE order by T_AGE desc
range between unbounded preceding and current row) as 그룹별합계
from TEST_USER
where rownum <=10
order by T_AGE DESC;
/*[rows 그룹별 합계 출력]*/
select T_NAME, T_AGE,
sum(T_AGE) over (partition by T_AGE order by T_AGE desc
rows between unbounded preceding and current row) as 그룹별합계
from TEST_USER
where rownum <=10
order by T_AGE DESC;
/* =========================== */
[결과 출력]
[range 그룹별 합계 출력]
[rows 그룹별 합계 출력]
/* =========================== */
/* =========================== */
[요약 설명]
1. range - 그룹별 마지막합계를 보여줍니다
2. rows - 그룹별 순차적으로 합계를 보여줍니다
3. ex - range (36 값이 2개가 있는 경우 2개합계를 더한 값인 72를 표시해줍니다)
rows (36 값이 2개가 있는 경우 순차적으로 36, 72 합계를 표시해줍니다)
/* =========================== */
반응형
'OracleDB' 카테고리의 다른 글
36. (Oracle/오라클) LAG, LEAD 사용해서 이전행 및 다음행 출력 실시 (0) | 2021.01.17 |
---|---|
35. (Oracle/오라클) rollup, cube 사용해 그룹별 소계 및 합계 구하기 실시 (0) | 2021.01.17 |
33. (Oracle/오라클) RANK와 DENSE_RANK 사용해 순위 표시 실시 (0) | 2021.01.17 |
32. (Oracle/오라클) ALTER TABLE DROP COLUMN 사용해 테이블 컬럼 삭제 실시 (0) | 2021.01.15 |
31. (Oracle/오라클) ALTER TABLE RENAME TO 사용해 테이블명 변경 실시 (0) | 2021.01.15 |
Comments