문제
1. 연봉이 12000 이상되는 직원들의 LAST_NAME 및 연봉을 조회한다.
(결과 예제)
LAST_NAME SALARY
------------------------- ----------
Hartstein 13000
King 24000
Kochhar 17000
De Haan 17000
Russell 14000
Partners 13500
//답 : 여기서 ASC를 더 해줬습니다.
SELECT LAST_NAME,SALARY FROM EMPLOYEES WHERE SALARY>12000 ORDER BY SALARY ASC;
2. 사원번호가 176 인 사람의 LAST_NAME 과 부서 번호를 조회한다.
(결과 예제)
LAST_NAME DEPARTMENT_ID
------------------------- -------------
Taylor 80
//답
SELECT LAST_NAME,DEPARTMENT_ID FROM EMPLOYEES WHERE EMPLOYEE_ID=176;
3. 연봉이 5000 에서 12000의 범위 이외인 사람들의
LAST_NAME 및 연봉을 조회힌다.
(결과 예제)
LAST_NAME SALARY
------------------------- ----------
OConnell 2600
Grant 2600
Whalen 4400
Hartstein 13000
King 24000
...
//답 :
SELECT LAST_NAME,SALARY FROM EMPLOYEES WHERE NOT SALARY BETWEEN 5000 AND 12000;
4. 1998/02/20 일부터 1998/05/01 사이에 고용된 사원들의 LAST_NAME 사번, 고용일자를 조회한다.
- 고용일자 순으로 정렬한다.
(결과 예제)
LAST_NAME JOB_ID HIRE_DATE
------------------------- ---------- ----------
Fleaur SH_CLERK 1998/02/23
Urman FI_ACCOUNT 1998/03/07
Matos ST_CLERK 1998/03/15
Bloom SA_REP 1998/03/23
Taylor SA_REP 1998/03/24
Olsen SA_REP 1998/03/30
Patel ST_CLERK 1998/04/06
Livingston SA_REP 1998/04/23
Walsh SH_CLERK 1998/04/24
//답
SELECT LAST_NAME,EMPLOYEE_ID,HIRE_DATE FROM EMPLOYEES WHERE HIRE_DATE BETWEEN '1998-02-20' AND '1998-05-01';
5. 20 번 및 50 번 부서에서 근무하는 모든 사원들의
LAST_NAME 및 부서 번호를 알파벳순으로 조회한다.
(결과 예제)
LAST_NAME DEPARTMENT_ID
------------------------- -------------
Atkinson 50
Bell 50
Bissot 50
Bull 50
Cabrio 50
Chung 50
...
//답
SELECT LAST_NAME,DEPARTMENT_ID FROM EMPLOYEES WHERE DEPARTMENT_ID=20 OR DEPARTMENT_ID=50
ORDER BY LAST_NAME ASC;
6. 20 번 및 50 번 부서에 근무하며, 연봉이 5000 ~ 12,000 사이인 사원들의 LAST_NAME 및 연봉을 조회한다.
(결과 예제)
EMPLOYEES SALARY
------------------------- ----------
Fay 6000
Weiss 8000
Fripp 8200
Kaufling 7900
Vollman 6500
Mourgos 5800
//답 : 저는 찾기 쉽게 이름을 알파벳순서대로 해보았습니다.
SELECT LAST_NAME,SALARY FROM EMPLOYEES WHERE SALARY
BETWEEN 5000 AND 12000 AND DEPARTMENT_ID=20 OR DEPARTMENT_ID=50 ORDER BY LAST_NAME ASC;
7. 1994년도에 고용된 모든 사람들의 LAST_NAME 및 고용일을 조회한다.
(결과 예제)
LAST_NAME HIRE_DATE
------------------------- ----------
Mavris 1994/06/07
Baer 1994/06/07
Higgins 1994/06/07
Gietz 1994/06/07
Greenberg 1994/08/17
Faviet 1994/08/16
Raphaely 1994/12/07
답 :
SELECT LAST_NAME,HIRE_DATE FROM EMPLOYEES WHERE HIRE_DATE BETWEEN '1994-01-01' AND '1994-12-31';
8. 매니저가 없는 사람들의 LAST_NAME 및 JOB_ID 를 조회한다.
(결과 예제)
LAST_NAME JOB_ID
------------------------- ----------
King AD_PRES
답 :
SELECT LAST_NAME,JOB_ID FROM EMPLOYEES WHERE MANAGER_ID IS NULL;
9. 커미션을 버는 모든 사원들의 LAST_ANME, 연봉 및 커미션을 조회한다.
- 연봉 역순, 커미션 역순차로 정렬한다.
(결과 예제)
LAST_NAME SALARY COMMISSION_PCT
------------------------- ---------- --------------
Russell 14000 .4
Partners 13500 .3
Errazuriz 12000 .3
Ozer 11500 .25
Cambrault 11000 .3
...
답 :
SELECT LAST_NAME,SALARY,COMMISSION_PCT FROM EMPLOYEES WHERE COMMISSION_PCT IS NOT NULL
ORDER BY SALARY DESC;
10. LAST_NAME 의 네번째 글자가 a 인 사원들의 LAST_NAME 을 조회한다.
(결과 예제)
LAST_NAME
-------------------------
Doran
Errazuriz
Fleaur
Kumar
McCain
Pataballa
Sciarra
Sewall
Tuvault
Urman
답 :
SELECT LAST_NAME FROM EMPLOYEES WHERE LAST_NAME LIKE '___a%';
출처: https://cocomo.tistory.com/117 [Cocomo Coding]
'RDB > Query Practice' 카테고리의 다른 글
쿼리연습 컬럼Comment보기 (0) | 2019.07.17 |
---|---|
쿼리연습 (0) | 2019.07.02 |
HR계정 문제 (0) | 2019.07.01 |
HR 계정 문제 (0) | 2019.06.19 |