티스토리 뷰
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);
'개발언어 > PL SQL' 카테고리의 다른 글
180402 EXCEPTION 연습문제 7, 8 (0) | 2018.04.02 |
---|---|
해석해보기 (0) | 2018.03.30 |
180328 반복문 IF WHILE FOR CONTINUES, 5장 연습문제 (0) | 2018.03.28 |
180327 연습문제 4장 (0) | 2018.03.27 |
180327 입력한 사원번호에 해당하는 사원 연봉계산 (0) | 2018.03.27 |