--Q1. HR EMPLOYEES 테이블에서 이름, 연봉, 10% 인상된 연봉을 출력하세요.
--A.
select first_name , salary, salary * 1.1 upsalary from employees;
--Q2. 2005년 상반기에 입사한 사람들만 출력
--A.
select * from employees
where hire_date between '05/01/01' and '05/06/30';
--Q3. 업무 SA_MAN, IT_PROG, ST_MAN 인 사람만 출력
--A.
select * from employees
where job_id in('SA_MAN' ,'IT_PROG','ST_MAN');
--Q4. manager_id 가 101에서 103인 사람만 출력
--A.
select * from employees
where manager_id between 101 and 103;
--Q5. EMPLOYEES 테이블에서 LAST_NAME, HIRE_DATE 및 입사일의 6개월 후 첫 번째 월요일을 출력하세요.
--A.
select last_name , hire_date , next_day(add_months(hire_date,6),'월') "Target" from employees;
--Q6. EMPLOYEES 테이블에서 EMPLPYEE_ID, LAST_NAME, SALARY, HIRE_DATE 및 입사일 기준으로 현재일까지의 W_MONTH(근속월수)를 정수로 계산해서 출력하세요.(근속월수 기준 내림차순)
--A.
select EMPLPYEE_ID, LAST_NAME, SALARY, HIRE_DATE,
truns(months_between(sysdate,hire_date)) w_month
from employees
order by w_month desc;
--Q7. EMPLOYEES 테이블에서 EMPLPYEE_ID, LAST_NAME, SALARY, HIRE_DATE 및 입사일 기준으로 W_YEAR(근속년수)를 계산해서 출력하세요.(근속년수 기준 내림차순)
--A.
select EMPLOYEE_ID, LAST_NAME, SALARY, HIRE_DATE,
trunc((sysdate-hire_date)/365) w_year
from employees
order by w_year desc;
--Q8. EMPLOYEE_ID가 홀수인 직원의 EMPLPYEE_ID와 LAST_NAME을 출력하세요.
--A.
select EMPLOYEE_ID, LAST_NAME from employees
where mod(employee_id, 2)= 1;
--Q9. EMPLOYEES 테이블에서 EMPLPYEE_ID, LAST_NAME 및 M_SALARY(월급)을 출력하세요. 단 월급은 소수점 둘째자리까지만 표현하세요.
--A
select EMPLOYEE_ID, LAST_NAME , trunc(salary/12) m_salary from employees;
--Q10. EMPLOYEES 테이블에서 EMPLPYEE_ID, LAST_NAME, SALARY, HIRE_DATE 및 입사일 기준으로 근속년수를 계산해서 아래사항을 추가한 후에 출력하세요.
--2001년 1월 1일 창업하여 현재까지 20년간 운영되온 회사는 직원의 근속년수에 따라 30 등급으로 나누어 등급에 따라 1000원의 BONUS를 지급.
--내림차순 정렬.
--A.
select EMPLOYEE_ID, LAST_NAME, SALARY, HIRE_DATE, trunc((sysdate-hire_date)/365) 근속연수,
trunc(((sysdate-hire_date)/365)30/20) 등급, (width_bucket(trunc((sysdate-hire_date)/365),0,20,30)-1)wb,
(width_bucket(trunc((sysdate-hire_date)/365),0,20,30)-1)1000 bonus_wb
from employees order by bonus_wb desc;