Oracle - 집계함수 - COUNT

갓김치·2020년 8월 20일
0

Oracle

목록 보기
19/33

참고

2020-08-20-01)집계함수AVG_COUNT.SQL

COUNT(* or expr)

  • 쿼리의 결과 내의 행의 수를 반환
  • 외부 조인에서는 expr을 사용해야함 (* 사용시: '0'이 '1'로 반환)

예시

1. 사원테이블에서 부서별 사원수를 조회하시오

  • 1) 부서명은 출력하지 않을 때
  • 2) 부서명 출력할 때: EQUI JOIN(내부조인) 수행
    • 결과: A.DEPARTMENT_ID가 NULL값인 사장님 날아감
    • 해결방법: OUTER JOIN 써야함

2. 회원테이블에서 직업별 회원수와 마일리지 합계, 평균 마일리지를 조회하시오

3. 사원테이블에서 전체직원들의 평균급여보다 급여가 많은 직원수를 부서별로 조회하시오

  • 1) 부서별 평균급여 출력하지 않을 때
  • 2) 부서별 평균급여 출력할 때

4. 사원테이블과 부서테이블을 사용하여 모든 부서의 인원수를 조회하시오

  • 준비: 각 테이블에서 사용하고 있는 부서코드 수 파악
  • 정답
  • 나쁜 예
        1. 외부조인((+)=)인데 COUNT( * ) 사용 -> 인원수 없는데 1이 나옴
        1. SELECET내에 부서코드를 적은 쪽 (A.DEPARTMENT_ID)를 사용함으로써 NULL값이 나오게됨

문제

준비) 문제풀기전에 퇴직처리

1. 사원테이블에서 현재 재직중인 사원수를 부서별로 조회하시오

  • 1) 부서명 안 나오게
  • 2) 부서명 나오게 (나중에다시해보기)
profile
갈 길이 멀다

0개의 댓글