본문 바로가기
Programming/Database

[Database] 기초 문제풀이

by 공부합시다홍아 2023. 12. 5.
 

[Database] - Group 함수 (그룹함수)

[Database] 함수 - 집합연산자와 분석함수 [Database] 여러 함수 [Database] 함수 : 숫자, 날짜 함수 그리고 변환 함수 [Database] 함수 : 문자형 [Database] DML TEST [Database] DML(Data Manipulation Language) Oracle Database 설

hong-study.tistory.com


연습문제 1
사원 테이블에서 JOB_ID별 사원 수를 구하세요.
SELECT COUNT(JOB_ID) FROM EMPLOYEES;

결과


연습문제 2
사원 테이블에서 JOB_ID별 월급의 평균을 구하세요. 월급의 평균 순으로 내림차순 정렬하세요
SELECT JOB_ID, ROUND(AVG(SALARY),2) 
FROM EMPLOYEES
GROUP BY JOB_ID
ORDER BY AVG(SALARY) DESC;

결과


연습문제 3
사원 테이블에서 입사 년도 별 사원 수를 구하세요
SELECT SUBSTR(HIRE_DATE,1,2) AS 입사년도, COUNT(*) AS 사원수,
FROM EMPLOYEES
GROUP BY SUBSTR(HIRE_DATE,1,2)
ORDER BY SUBSTR(HIRE_DATE,1,2);
SELECT TO_CHAR(HIRE_DATE, 'YY') AS 입사년도, COUNT(*) AS 사원수
FROM EMPLOYEES
GROUP BY TO_CHAR(HIRE_DATE, 'YY')
ORDER BY TO_CHAR(HIRE_DATE, 'YY');

결과


연습문제 4
급여가 1000 이상인 사원들의 부서별 평균 급여를 출력하세요. 단 부서 평균 급여가 2000이상인 부서만 출력
SELECT DEPARTMENT_ID, ROUND(AVG(SALARY),2) AS 급여평균
FROM EMPLOYEES
WHERE SALARY >= 1000
GROUP BY DEPARTMENT_ID
HAVING AVG(SALARY) >= 2000
ORDER BY DEPARTMENT_ID;


연습문제 5 
사원 테이블에서 commission_pct(커미션) 컬럼이 null이 아닌

사람들의 department_id(부서별) salary(월급)의 평균, 합계, count를 구합니다
SELECT 
      DEPARTMENT_ID AS 부서명, 
      ROUND(AVG(SALARY + SALARY * COMMISSION_PCT),2) AS 급여평균, 
      SUM(SALARY) AS 급여총액, 
      COUNT(*) AS 수
FROM EMPLOYEES 
WHERE COMMISSION_PCT IS NOT NULL
GROUP BY DEPARTMENT_ID;

결과


연습문제 6
직업별 월급합, 총합계를 출력하세요
SELECT DECODE(GROUPING(JOB_ID), 1, '합계', JOB_ID), 
       SUM(SALARY) AS 합계
FROM EMPLOYEES
GROUP BY ROLLUP(JOB_ID) 
ORDER BY JOB_ID;

결과


연습문제 7
부서별, JOB_ID를 그룹핑 하여 토탈, 합계를 출력하세요.
SELECT DECODE( GROUPING(DEPARTMENT_ID), 1, '총계', DEPARTMENT_ID) AS DEPARTMENT_ID,
       DECODE ( GROUPING(JOB_ID),1,'소계', JOB_ID) AS JOB_ID,
       COUNT(*) AS TOTAL,
       SUM(SALARY) AS SUM
FROM EMPLOYEES
GROUP BY ROLLUP(DEPARTMENT_ID, JOB_ID)
ORDER BY SUM;

결과

728x90

'Programming > Database' 카테고리의 다른 글

[Database] JOIN 문제풀이  (0) 2023.12.06
[Database] JOIN  (0) 2023.12.06
[Database] - Group 함수 (그룹함수)  (1) 2023.12.05
[Database] 함수 - 집합연산자와 분석함수  (1) 2023.12.05
[Database] 여러 함수  (0) 2023.12.04