오라클[sql] 연습문제 (employees 테이블)
연습문제 (employees 테이블)
CREATE TABLE EMPLOYEES
as SELECT * FROM HR.EMPLOYEES;
문제
1. EMPLOYEES 테이블에서 사원 이름을 first_name과 last_name를 합쳐 full_name으로 출력
SELECT first_name || ' ' || last_name AS "full_name"
FROM EMPLOYEES;
2. 부서번호가 30(구매부서)이고 급여 10000미만인 사원의 full_name과 월급,부서번호를 출력
SELECT first_name || ' ' || last_name AS "full_name", salary, department_id
FROM EMPLOYEES
WHERE department_id = 30 AND salary < 10000;
3. 부서번호가 30이고 급여가 10000달러 이하를 받는 2006년도 이전 입사한 사원의 full_name을 출력
SELECT first_name || ' ' || last_name AS "full_name"
FROM EMPLOYEES
WHERE department_id = 30 AND salary <= 10000 AND hire_date < '2006/01/01';
4. 부서번호가 30(구매부서)이고 급여가 10000이하인 사원과 부서번호가 60(IT부서)에서 급여가 5000이상인 사원을 조회
SELECT * FROM EMPLOYEES
WHERE (department_id = 30 AND salary <= 10000)
OR (department_id = 60 AND salary >= 5000);
5. 사원번호가 110번에서 120번인 사원 중 급여가 5000에서 10000사이의 사원명단을 조회
SELECT * FROM EMPLOYEES
WHERE (employee_id >= 100 AND employee_id <= 120)
AND salary BETWEEN 5000 AND 10000;
6. 사원번호가 110번에서 120번이 아닌 사원을 조회
SELECT * FROM EMPLOYEES
WHERE employee_id NOT BETWEEN 110 AND 120;
7. 부서번호가 30(구매부서), 60(IT부서), 90(경영부서)에 속한 사원을 조회
SELECT * FROM EMPLOYEES
WHERE department_id IN(30, 60,90 );
8. 부서번호가 30(구매부서), 60(IT부서), 90(경영부서) 외의 부서에 속한 사원을 조회
SELECT * FROM EMPLOYEES
WHERE department_id NOT IN(30, 60,90 );
9. 전화번호에서 590으로 시작하는 사원명과 전화번호를 조회
SELECT first_name, last_name, phone_number FROM EMPLOYEES
WHERE phone_number like '590%';