RDS/Oracle
-
[Oracle] WITH 문RDS/Oracle 2020. 9. 19. 10:36
WITH문 이란?오라클9 이후 버전부터 사용이 가능하며, 이름을 정의한 SubQuery를 사용하는 구문입니다. WITH문 장점- 전제척인 가독성을 높이고, 재사용할 수 있는 장점이 있습니다.- 일반 Subquery는 서로 참조할 수 없지만, WITH문은 서로 참조가 가능합니다.- 한번만 사용되면 Inline View, 두번이상 사용되면 Materialize View로 처리합니다. WITH문 문법123456WITH [ALIAS명] AS ( /* SQL Body */)SELECT * FROM [ALIAS명];cs WITH문 예제1.사원명, 부서명 조회123456789101112131415161718/* Sub Query를 이용하는 방법 */SELECT * FROM ( SELECT T1.ENAME , T2.D..
-
[Oracle] WINDOWNING 절RDS/Oracle 2020. 9. 12. 12:33
윈도우 함수 종류1.그룹 내 순위(RANK) 관련 함수 - RANK, DENSE_RANK, ROW_NUMBER 함수2.그룹 내 집계(AGGREGATE) 관련 함수 - SUM, MAX, MIN, AVG, COUNT 함수 3.그룹 내 행 순서 관련 함수 - FIRST_VALUE, LAST_VALUE, LAG, LEAD 함수 4.그룹 내 비율 관련 함수 - CUME_DIST, PERCENT_RANK, NTILE, RATIO_TO_REPORT 함수 윈도우 함수 문법1234SELECT WINDOW_FUNCTION(ARGUMENTS) OVER ([PARTITION BY 컬럼] [ORDER BY 절] [WINDOWING 절]) FROM 테이블명;Colored by Color Scriptercs WINDONWING 절..
-
[Oracle] COUNT 함수RDS/Oracle 2020. 9. 5. 13:14
COUNT 함수란? - 데이터 건수를 반환하는 함수입니다. - 윈도우 함수(Window Funtion)로 그룹 내 집계 함수입니다. COUNT 사용법12345SELECT COUNT(*) AS TOTAL_COUNT , COUNT(MGR) AS MGR_COUNT , COUNT(NVL(MGR, 0)) AS MGR_COUNT_NVL , COUNT(DISTINCT DEPTNO) AS DEPTNO_COUNT FROM EMP;Colored by Color Scriptercs COUNT(*) - 전체 데이터 건수를 반환합니다. COUNT(컬럼) - 컬럼의 값이 NULL인 행을 제외한 데이터의 건수를 반환합니다. - NULL인 행을 포함하기 위해서는 NVL, DECODE 등을 통해 값을 COUNT(DISTINCT 컬럼)..
-
[Oracle] ROW_NUMBER 함수RDS/Oracle 2020. 8. 30. 13:02
ROW_NUMBER 함수란? - 각 PARTITION 내에서 ORDER BY절에 의해 정렬된 순서를 기준으로 고유한 값을 반환하는 함수입니다. - 윈도우 함수(Window Funtion)로 그룹 내 순위 함수입니다. 문법ROW_NUMBER() OVER(PARTITION BY [그룹핑할 컬럼] ORDER BY [정렬할 컬럼])- PARTITION BY는 선택, ORDER BY는 필수 PARTITION BY 미사용1234SELECT ROW_NUMBER() OVER(ORDER BY T1.JOB, T1.ENAME) AS ROW_NUM , T1.* FROM EMP T1 ORDER BY T1.JOB, T1.ENAME;Colored by Color Scriptercs PARTITION BY 사용1234SELECT R..
-
[Oracle] ROWNUM 함수RDS/Oracle 2020. 8. 30. 12:00
ROWNUM 함수란? - 오라클에서 제공하는 가상의 컬럼으로 첫 행은 1부터 시작하여 행 수에 따라 1씩 증가합니다. 123SELECT ROWNUM , T1.* FROM EMP T1;cs ORDER BY 절 사용 시 주의사항 - ROWNUM의 실행 순서는 WHERE절 실행 후이기 때문에 ORDER BY절과 관계없이 ROWNUM이 출력됩니다.1234SELECT ROWNUM , T1.* FROM EMP T1 ORDER BY ENAME ASC;cs - ROWNUM과 ORDER BY절을 같이 사용하기 위해서는 ORDER BY절을 실행한 후 정렬된 결과에 ROWNUM을 추가해야 합니다.1234567SELECT ROWNUM , T2.* FROM ( SELECT T1.* FROM EMP T1 ORDER BY T1.E..
-
[Oracle] 윈도우 함수(Window Funtion)_그룹 내 비율 함수RDS/Oracle 2019. 3. 26. 07:00
윈도우 함수 종류1.그룹 내 순위(RANK) 관련 함수 - RANK, DENSE_RANK, ROW_NUMBER 함수2.그룹 내 집계(AGGREGATE) 관련 함수 - SUM, MAX, MIN, AVG, COUNT 함수 3.그룹 내 행 순서 관련 함수 - FIRST_VALUE, LAST_VALUE, LAG, LEAD 함수 4.그룹 내 비율 관련 함수 - CUME_DIST, PERCENT_RANK, NTILE, RATIO_TO_REPORT 함수 윈도우 함수 문법 SELECT WINDOW_FUNCTION (ARGUMENTS) OVER ([PARTITION BY 컬럼] [ORDER BY 절] [WINDOWING 절]) FROM 테이블명; WINDOW_FUNCTION - 함수명ARGUMENTS (인수) - 함수에..
-
[Oracle] 윈도우 함수(Window Funtion)_그룹 내 행 순서 함수RDS/Oracle 2019. 3. 25. 07:30
윈도우 함수 종류1.그룹 내 순위(RANK) 관련 함수 - RANK, DENSE_RANK, ROW_NUMBER 함수2.그룹 내 집계(AGGREGATE) 관련 함수 - SUM, MAX, MIN, AVG, COUNT 함수 3.그룹 내 행 순서 관련 함수 - FIRST_VALUE, LAST_VALUE, LAG, LEAD 함수 4.그룹 내 비율 관련 함수 - CUME_DIST, PERCENT_RANK, NTILE, RATIO_TO_REPORT 함수 윈도우 함수 문법 SELECT WINDOW_FUNCTION (ARGUMENTS) OVER ([PARTITION BY 컬럼] [ORDER BY 절] [WINDOWING 절]) FROM 테이블명; WINDOW_FUNCTION - 함수명ARGUMENTS (인수) - 함수에..
-
[Oracle] 윈도우 함수(Window Funtion)_그룹 내 집계 함수RDS/Oracle 2019. 3. 21. 07:30
윈도우 함수 종류1.그룹 내 순위(RANK) 관련 함수 - RANK, DENSE_RANK, ROW_NUMBER 함수2.그룹 내 집계(AGGREGATE) 관련 함수 - SUM, MAX, MIN, AVG, COUNT 함수 3.그룹 내 행 순서 관련 함수 - FIRST_VALUE, LAST_VALUE, LAG, LEAD 함수 4.그룹 내 비율 관련 함수 - CUME_DIST, PERCENT_RANK, NTILE, RATIO_TO_REPORT 함수 윈도우 함수 문법 SELECT WINDOW_FUNCTION (ARGUMENTS) OVER ([PARTITION BY 컬럼] [ORDER BY 절] [WINDOWING 절]) FROM 테이블명; WINDOW_FUNCTION - 함수명ARGUMENTS (인수) - 함수에..
-
[Oracle] 윈도우 함수(Window Funtion)_그룹 내 순위 함수RDS/Oracle 2019. 3. 20. 07:30
윈도우 함수 종류1.그룹 내 순위(RANK) 관련 함수 - RANK, DENSE_RANK, ROW_NUMBER 함수2.그룹 내 집계(AGGREGATE) 관련 함수 - SUM, MAX, MIN, AVG, COUNT 함수 3.그룹 내 행 순서 관련 함수 - FIRST_VALUE, LAST_VALUE, LAG, LEAD 함수 4.그룹 내 비율 관련 함수 - CUME_DIST, PERCENT_RANK, NTILE, RATIO_TO_REPORT 함수 윈도우 함수 문법 SELECT WINDOW_FUNCTION (ARGUMENTS) OVER ([PARTITION BY 컬럼] [ORDER BY 절] [WINDOWING 절]) FROM 테이블명; WINDOW_FUNCTION - 함수명ARGUMENTS (인수) - 함수에..
-
[Oracle] 그룹 함수(Group Funtion)RDS/Oracle 2019. 3. 19. 07:30
그룹 함수(Group Funtion) 그룹 함수로는 집계 함수를 제외하고, 소그룹 간의 소계를 계산하는 ROLLUP 함수, GROUP BY 항목들 간 다차원적인 소계를 계산할 수 있는 CUBE 함수, 특정 항목에 대한 소계를 계산하는 GROUPING SETS 함수가 있습니다. ROLLUP은 GROUP BY의 확장된 형태로 사용하기가 쉬우며 병렬로 수행이 가능하기 때문에 매우 효과적일 뿐 아니라 시간 및 지역처럼 계층적 분류를 포함하고 있는 데이터의 집계에 적합하도록 되어 있습니다. CUBE는 결합 가능한 모든 값에 대하여 다차원적인 집계를 생성하게 되므로 ROLLUP에 비해 다양한 데이터를 얻는 장점이 있는 반면에, 시스템에 부하를 많이 주는 단점이 있습니다. GROUPING SETS는 원하는 부분의 소..