본문 바로가기

오라클15


오라클 RANK 심화 - RANK() WITHIN GROUP(), RANK() OVER(), ROW_NUMBER() OVER(), DENSE_RANK() ※ ORDER BY SALARY DESC 의 그룹에서 3,000 의 순위는? 기본 문법 : RANK(순위를 구할 컬럼 혹은 값) WITHIN GROUP(ORDER BY 기준이 될 컬럼 [정렬값]) 값 대신 컬럼명을 이용해 전체적인 순위를 구할 수도 있다. SELECT RANK(3000) WITHIN GROUP(ORDER BY SALARY DESC) as DESC_RANK FROM EMPLOYEES DESC_RANK : 82 SELECT RANK(3000) WITHIN GROUP(ORDER BY SALARY ASC) as ASC_RANK FROM EMPLOYEES ASC_RANK : 25 ※ 제일 많은 급여를 받는 사람부터 정렬하면서 RANK 매기기 기본 문법 : RANK() OVER(ORDER BY 기준.. 2018. 2. 18.
오라클 AVG 심화 - AVG() OVER() AVG() OVER() ※ 부서ID 를 기준으로 급여의 평균을 구해 같이 표시해준다. 기본 문법 : AVG(평균값을 구할 컬럼) OVER(PARTITION BY 기준이 될 컬럼) SELECT EMPLOYEE_ID , SALARY , DEPARTMENT_ID , AVG(SALARY) OVER(PARTITION BY DEPARTMENT_ID) AS DEPART_AVG_SALARY FROM EMPLOYEES WHERE DEPARTMENT_ID IN (10,20,30); ※ 결과값 EMPLYEE_ID SALARY DEPARTMENT_ID DEPART_AVG_SALARY 200 4400 10 4400 201 13000 20 9500 202 6000 20 9500 114 11000 30 4150 115 3100 3.. 2018. 2. 18.
많이 쓰이는 오라클 함수 반올림 함수 - round(value, n) . 을 기준으로 양수는 오른쪽, 음수는 왼쪽이다. 양수일 경우는 . 을 기준으로 오른쪽에서 n 만큼 이동한 후 해당 커서가 닿는 곳의 오른쪽의 수를 반올림한다. 음수일 경우는 . 을 기준으로 오른쪽에서 n 만큼 이동한 후 해당 커서가 닿는 곳의 왼쪽의 수를 반올림한다. 예) round(13.281, 2) : 13.28 예) round(13.286, 2) : 13.29 예) round(13.281, -1) : 10 버림 함수 - trunc(value, n) . 을 기준으로 양수는 오른쪽, 음수는 왼쪽이다. 양수일 경우는 . 을 기준으로 오른쪽에서 n 만큼 이동한 후 해당 커서가 닿는 곳의 오른쪽의 수를 반올림한다. 음수일 경우는 . 을 기준으로 오른쪽에서 n 만.. 2018. 2. 18.