모두CBT

20-4[사원] 테이블에서 부서마다 사원(튜플)이 몇 명인지 구하는 S… | 2020년 정보처리기사실기 4회차 기출문제 상세 페이지

14

20-4

[사원] 테이블에서 부서마다 사원(튜플)이 몇 명인지 구하는 SQL 문을 [조건]에 맞게 작성하시오.

[사원]

부서이름
영업김하준
기획최서연
영업정민호
개발윤지아
영업한도현
개발서예린

[조건]

  • WHERE 절은 쓰지 않는다.
  • GROUP BY 절을 사용한다.
  • 집계 함수를 사용하고, 그 결과 열에는 AS로 별칭을 붙인다.
  • 대소문자는 구분하지 않으며, 끝의 세미콜론(;)은 생략해도 된다.
해설

SELECT 부서, COUNT(*) AS 인원수 FROM 사원 GROUP BY 부서;


[해설]

부서별로 묶어야 하므로 GROUP BY 부서, 행 수를 세야 하므로 COUNT(*)를 쓴다.

COUNT(*) 대신 COUNT(부서)나 COUNT(이름)도 NULL이 없으니 같은 결과이며, 별칭 이름은 자유다.

부서인원수
개발2
기획1
영업3

그룹에 조건을 걸어야 할 때는 WHERE가 아니라 HAVING을 쓴다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.