오라클 분석 함수( RANK OVER() / ROW_NUMBER() OVER() )
-- 분석 함수 -- RANK OVER() -- ROW_NUMBER() OVER() ** 중요 제일 많은 씀 ** -- 순위를 구함. -- RANK() OVER()는 동일 순위인 경우 1,1,3, 형식으로 출력하지만 -- ROW_NUMBER() OVER()는 동일 순위인 경우 1,2,3, 형식으로 출력 -- DENSE_RANK() OVER()는 동일 순위인 경우 1,1,2 형식으로 출력 -- ROW_NUMBER() OVER()는 매우매우매우 중요한 함수이므로 반드시 알아 둘것 !!!!!!!!!!!!!!!!!!!!!!! --기본급 내림차순으로 순위를 구하기 SELECT name, basicpay, RANK() OVER(ORDER BY basicpay DESC) 순위 FROM insa; -- 비교데이타가 똑..
더보기
오라클 ROLLUP,CUBE,GROUPINGSET 그룹화 함수
--ROLLUP : 그룹화하고 그룹에 대한 부분합 -- CUBE : ROLLUP 결과에 GROUP BY 절의 조건에 따라 모든 가능한 그룹핑 조합에 따른 결과 출력 SELECT buseo,jikwi, SUM(basicpay) FROM insa GROUP BY buseo,jikwi; SELECT buseo,jikwi, SUM(basicpay) FROM insa GROUP BY ROLLUP (buseo,jikwi); -- 직위의 null 값이 들어간부분이 합이다. SELECT buseo,jikwi, SUM(basicpay) FROM insa GROUP BY CUBE(buseo,jikwi); --null null 총합 / 부서 null 직위의 합/ 직위 null 부서의 합/ -- GROUPING SET : G..
더보기
오라클 집합연산자
-- 집합 연산자 --UNION : 합집합(중복데이터는 한번만 출력)SELECT name, city, buseo FROM insa WHERE city='서울';=>서울만 출력SELECT name, city, buseo FROM insa WHERE buseo='개발부';UNIONSELECT name, city, buseo FROM insa WHERE city='서울';=>개발부 데이타 가지고 있으면 출력, 서울 데이타 가지고 있으면 출력(개발부이면서 서울인 데이타는 한번만 출력) -- UNION ALL: 합집합(중복데이터 다나옴) SELECT name, city , buseo FROM insa WHERE buseo='개발부'UNION ALLSELECT name, city, buseo FROM insa WH..
더보기
오라클 DECODE : 각각의 조건에 맞는 값에 대한 처리 결과 리턴(CASE 보다 성능 떨어짐)
-- DECODE : 각각의 조건에 맞는 값에 대한 처리 결과 리턴(CASE 보다 성능 떨어짐)SELECT name, ssn, DECODE(SUBSTR(ssn, 8,1),1, '남자', 2,'여자', 3, '남자', 4,'여자')성별 FROM insa; SELECT name, ssn, DECODE(MOD(SUBSTR(ssn, 8,1),2), 0, '여자', 1, '남자')성별 --MOD 나머지 구한값 -- 나머지가 0이면 여자 FROM insa; SELECT name, ssn, DECODE(SUBSTR(ssn, 8,1),1, '남자', 2,'여자', 3, '남자', 4,'여자')성별 FROM insa; SELECT name, ssn, DECODE(SUBSTR(ssn, 8,1),1, '남자')성별 -- 만..
더보기