티스토리 뷰

개발언어/PL SQL

SQL 연습 문제

쿵도리 2018. 3. 30. 17:39

1. 사원의 이름과 입사일, 입사 요일, 근무한 개월 수를 표시하는 SQL문을 작성 후 입사 요일 별로 정렬하기 월~일 순


SELECT last_name, hire_date, Months_Between(sysdate, hire_date ),

TO_CHAR('day')

FROM employees

ORDER BY TO_CHAR(hire_date-1, 'd')




2. 사원이 상여금을 받으면 표시하고 받지 않으면 No Commission으로 출력하는 SQL문을 작성하세요


SELECT commission_pct, coalesce(TO_CHAR(commission_pct), 'No commission')

FROM employees;


3. 관리자 별 사원수와 최저 급여를 표시하는 SQL문을 작성하세요. 단 관리자를 알 수 없는 사원과 최저급여가 5000 이하인 사원은 제외시키세요


SELECT manager_id, count(*), min(salary)

FROM employees

WHERE manager_id IS NOT NULL

GROUP BY manager_id

HAVING min(salary) > 5000


4. 사원의 이름과 부서 이름, 급여, 급여 등급(Grade_level)을 표시하는 SQL문을 작성하세요


SELECT e.last_name, d.department_name, e.salary

FROM employees e, departments d, job_grades j

WHERE e.department_id = d.department_id

and e.salary berween j.lowest_sal and j.highest_sal;


5. 부서별 평균 급여가 가장 높은 부서의 ID, 부서 이름, 평균 급여를 표시하는 SQL문을 작성하세요


SELECT e.department_id, d.department_name, avg(e.salary)

from employees e join department_id

group by e.department_id, d.department_name

having avg(salary)=(select max(avg(salary))

from employees

group by department_id);

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함