본문으로 바로가기

[Oracle] GROUP BY, COUNT, 그룹함수

category DB/Oracle 2016. 2. 16. 11:13


SELECT의 MANAGER_ID와 GROUP BY의 COLUMN명이 같아야한다.

보고싶은 칼럼이 기준이 되어 그룹핑된다.


매니저가 없는 사람들을 구하기 위해서 IS NULL을 쓴다.

더 정확히 찾기위해 빈칸도 찾는다.


SALARY BETWEEN 5000 AND 12000 을 쓰는 대신 AND로 이었다.

20번 및 50번 부서에 근무하는 것은 

IN ( 20, 50 )으로 썼다.

이것은 쿼리내에서 자동으로 OR로 처리된다.


이는 MAX( SALARY ) MIN SUM AVG 로 나타낼수 있으며

ROUND 를 쓰면 반올림을 할 수 있다.


부서별로 알아보고 싶을때는 GROUP BY를 쓴다.


그러면 위와 같은 결과가 나오게 된다.


GROUP BY는 NULL 값까지 포함시킨다.

NULL값을 지우기위해 NVL ( DEPARTMENT_ID, 0 )과 같이 쓴다. NULL값이 0으로 바뀌어 나온다.

테이블 컬럼의 이름을 재명명 해주고 싶으면 위와같이 AS MAX_SALARY 를 쓰면 된다.

굳이 AS를 쓰지 않아도 한칸띄우고 옆에 재몀명 이름을 써주면 재명명된다.



그룹별 평균 연봉에서 5000이상인 그룹만 보고싶을땐

GROUP에 조건을 걸 수 있는 HAVING을 써주면 된다.



'DB > Oracle' 카테고리의 다른 글

[Oracle] 테이블 제약조건  (0) 2016.02.17
[Oracle] 서브 쿼리  (0) 2016.02.16
[Oracle] SQL 연습  (0) 2016.02.15
[Oracle] oracle 새 접속 만들기  (0) 2016.02.15
[Oracle] oracle 설치  (0) 2016.02.15