CREATE TABLE t_emp
(
id INT,
name VARCHAR(25),
mailid VARCHAR(8),
start_date DATE,
manager_id INT,
title VARCHAR(25),
dept_id INT,
salary INT,
commission_pct INT
);
INSERT INTO t_emp VALUES (
1, '박구곤', 'sky98',
'1990-03-03', NULL, '사장',
118, 5000, NULL);
INSERT INTO t_emp VALUES (
2, '손명성', '2xxsig',
'1990-03-08', 1, '기획부장',
110, 3000, NULL);
INSERT INTO t_emp VALUES (
3, '이은선', 'ch21175',
'1991-06-17', 1, '영업부장',
102, 3500, NULL);
INSERT INTO t_emp VALUES (
4, '서의홍', 'mquickto',
'1991-08-27', 1, '총무부장',
101, 3000, NULL);
INSERT INTO t_emp VALUES (
5, '김심선', 'aropebur',
'1992-01-02', 1, '인사부장',
118, 3200, NULL);
INSERT INTO t_emp VALUES (
6, '전지영', 'murguhar',
'1993-05-23', 2, '과장',
110, 2400, NULL);
INSERT INTO t_emp VALUES (
7, '김정미', 'enchu',
'1994-01-18', 2, '과장',
111, 2400, NULL);
INSERT INTO t_emp VALUES (
8, '신기웅', 'bbiri',
'1993-08-27', 2, '과장',
112, 2100, NULL);
INSERT INTO t_emp VALUES (
9, '이상헌', 'acatchpo',
'1994-03-24', 2, '과장',
113, 2300, NULL);
INSERT INTO t_emp VALUES (
10, '최순철', 'mhavel',
'1993-09-17', 2, '과장',
113, 2300, NULL);
INSERT INTO t_emp VALUES (
11, '최정선', 'cmagee',
'1993-05-21', 3, '영업대표이사',
102, 2450, 10);
INSERT INTO t_emp VALUES (
12, '안은경', 'hgiljum',
'1993-03-12', 3, '영업대표이사',
103, 2500, 12.5);
INSERT INTO t_emp VALUES (
13, '김석우', 'ysedeghi',
'1995-03-15', 3, '영업대표이사',
104, 2650, 10);
INSERT INTO t_emp VALUES (
14, '박성규', 'mnguyen',
'1992-03-17', 3, '영업대표이사',
105, 2650, 15);
INSERT INTO t_emp VALUES (
15, '신종필', 'adumas',
'1991-01-04', 3, '영업대표이사',
106, 2400, 17.5);
INSERT INTO t_emp VALUES (
16, '이기철', 'emaduro',
'1996-12-05', 6, '사원',
110, 2400, NULL);
INSERT INTO t_emp VALUES (
17, '구원상', 'gsmith',
'1994-06-02', 6, '사원',
110, 940, NULL);
INSERT INTO t_emp VALUES (
18, '서정주', 'anozaki',
'1994-05-21', 7, '사원',
111, 1200, NULL);
INSERT INTO t_emp VALUES (
19, '안창환', 'vpatel',
'1997-03-02', 7, '사원',
111, 795, NULL);
INSERT INTO t_emp VALUES (
20, '윤정숙', 'cnewman',
'1996-09-12', 8, '사원',
112, 750, NULL);
INSERT INTO t_emp VALUES (
21, '장현철','amarkari',
'1996-07-24', 8, '사원',
112, 850, NULL);
INSERT INTO t_emp VALUES (
22, '장혜숙', 'echang',
'1995-03-08', 9, '사원',
113, 800, NULL);
INSERT INTO t_emp VALUES (
23, '강연범', 'rpatel',
'1994-06-11', 9, '사원',
106, 795, NULL);
INSERT INTO t_emp VALUES ( 24, '오은경', 'bdancs',
'1996-07-08', 10, '사원',
113, 860, NULL);
INSERT INTO t_emp VALUES (
25, '이용호', 'sschwart',
'1998-12-07', 10, '사원',
113, 1100, NULL);
[[[[ 문제풀기 위해서 제공되는 "쿼리 실습용 테이블 생성.sql"에 있는 실습테이블을 생성합니다. ]]]]
1. 112, 118부서를 대상으로 과장과 사원의 이름, 직급, 급여, 부서ID를 조회하되, 급여는 1500 이상 4000 이하인 직원만
출력되도록 하시오.
단, 급여가 많은 사람부터 화면에 출력합니다.
select name, title, salary from t_emp where salary >= 1500 and salary <= 4000;
2. 관리자가 없는 직원의 이름, 직급, 급여를 조회하시오.
(힌트. manager_id 컬럼이 자신의 상사가 누구인지 알 수 있는 컬럼입니다.)
select name, title, salary from t_emp where manager_id IS null;
3. 직급이 부장이면서 급여가 3000 이상인 직원의 이름, 직급, 급여를 조회하시오.
SELECT name, title, salary FROM t_emp WHERE (manager_id >= 1 AND manager_id <=2) AND salary >= 3000;
4. 직급이 부장과 과장인 사람들을 대상을 이름, 직급, 급여를 조회하시오.
단, 112, 113, 117, 118 부서에 소속되어 있는 사원 중에서 급여가 2300 ~ 3000 사이인 직원만 조회되도록 하시오.
부서순으로 출력합니다.
SELECT name, title, salary FROM t_emp WHERE (manager_id >= 1 AND manager_id <=2) AND salary >= 2300 AND salary <= 3000 AND dept_id >= 112 AND dept_id <= 118;
5. 직급이 부장 혹은 과장이면서 03월에 입사한 직원의 이름, 직급, 급여, 입사일을 조회하시오.
SELECT name, title, salary, start_date FROM t_emp WHERE (manager_id >= 1 AND manager_id <=2) AND DATE_FORMAT(start_date, '%m')=3;
6. 직원의 연봉에 1000 을 더한 값을 조회하시오.
연봉은 급여에 16을 곱하면 됩니다. 단, 연봉은 ALIAS를 지정하여 화면에 출력시 "직원연봉" 으로 출력되도록 합니다.
SELECT (salary * 16 + 1000) AS "직원연봉" FROM t_emp;
7. 출력결과가 다음과 같도록 조회하시오.
직원 급여
---------------------------------
박구곤 사장의 급여 5,000
손명성 기획부장의 급여 3,000
이은선 영업부장의 급여 3,500
서의홍 총무부장의 급여 3,000
김심선 인사부장의 급여 3,200
...
...
select concat(name," " ,title, "의 급여 ",FORMAT(salary, 0)) as '직원급여' from t_emp;
8. 커미션을 받으면서 자신을 관리하는 관리자가 있는 직원을 대상으로 급여가 2500 이상인 직원을 조회하시오.
화면에 출력 시 직원의 연봉이 낮은 사람부터 출력합니다.
'SKILL > DATABASE' 카테고리의 다른 글
자바 jdbc 설정 (0) | 2017.12.31 |
---|---|
몽고DB homebrew를 통한 설치 for MAC (0) | 2017.12.31 |
몽고db 2일차 (0) | 2017.12.29 |
몽고db 연습예시 1일차 (0) | 2017.12.28 |
쿼리 연습 (0) | 2017.12.26 |