Programming/SQL

[SQL/실습] 데이터 검색 - 연습문제 풀어보기 2 (문제)

reeme 2020. 12. 16. 20:38

example테이블.xlsx
0.01MB

* 첨부파일에 있는 데이터로 테이블로 만든 후 아래 문제를 푸세요 *

단 각 테이블의 컬럼의 데이터 유형은 데이터를 참조해서 설정하시오.

 

 

연습문제


1. 부서번호가 10번인 부서의 사람 중 사원번호, 이름, 월급을 출력하세요

 

 

2. 사원번호가 7369인 사람 중 이름, 입사일, 부서번호를 출력하세요.

 


3. 이름이 ALLEN인 사람의 모든 정보를 출력하세요.

 


4. 입사일이 83/01/12인 사람의 이름, 부서번호,월급을 출력하세요.

 


5. 직업이 MANAGER가 아닌 사람의 모든 정보를 출력하세요.

 


6. 이름이 K로 시작하는 사람보다 높은 이름을 가진 사람의 모든 정보를 출력하세요.

 


7. 입사일이 81/04/02 보다 늦고 82/12/09

 


보다 빠른 사원의 이름, 월급, 부서번호를 출력하세요.

 


8. 이름 중 S자가 들어가 있는 사람만의 모든 정보를 출력하세요.

 


9. 이름이 S로 시작하고 마지막 글자가 T인 사람의 모든 정보를 출력하세요(단 이름은 전체 5자리)

 

 

10. 첫 번째 문자는 관계없고 두 번재 문자가 A인 사람의 정보를 출력하세요.

 


11. 급여가 많은 순으로 SORT하세요.

 


12. 이름의 첫 글자가 K로 시작하거나 부서번호가 30인 사람의 사원번호, 이름, 부서번호를 출력하세요.

 


13. 급여가 1500이상이고, 부서번호가 30번인 사원 중 직업이 MANAGER인 사람의 정보를 출력하세요.

 


14. 사원번호가 7654와 7782 사이 이외의 사원의 모든 정보를 출력하세요.

 


15. 이름이 B와 J사이의 모든 사원의 정보를 출력하세요.

 


16. 입사일이 81년 이외에 입사한 모든 정보를 출력하세요.

 


17. 직업이 MANAGER와 SALESMAN인 사람의 모든 정보를 출력하세요.

 


18. 부서번호와 20,30번을 제외한 모든 사람의 이름, 사원번호, 부서번호를 출력하세요.

 


19. 입사일이 81년도인 사람의 모든 정보를 출력하세요.

 


20. 커미션이 NULL인 사람의 정보를 출력하세요

 


21. 커미션이 NULL이 아닌 사람의 모든 정보를 출력하세요.

 

 

22. 부서가 30번 부서이고, 급여가 1500 이상인 사람의 이름, 부서, 월급을 출력하세요.

 


23. 이름의 첫 글자가 K로 시작하거나 부서번호가 30인 사람의 사원번호, 이름, 부서번호를 출력하세요.

 


24. 'ALLEN'의 직무와 같은 사람의 이름, 부서명, 급여, 직무를 출력하세요.

 


25. JONES가 속해있는 부서의 모든 사람의 사원번호, 이름, 입사일, 급여를 출력하세요.

 


26. 전체 사원의 평균 임금보다 많은 사원의 사원번호, 이름, 부서명, 입사일, 지역, 급여를 출력하세요.

 


27. 10번 부서와 같은 일을 하는 사원의 사원번호, 이름, 부서명, 지역, 급여를 급여가 많은 순으로 출력하세요.

 


28. 'MARTIN'이나 'SCOTT'의 급여와 같은 사원의 사원번호, 이름, 급여를 출력하세요.

 


29. 부서번호가 30번 부서의 최고 급여보다 높은 사원의 사원번호, 이름, 급여를 출력하세요.

 


30. 사원중에서 급여(sal)와 보너스(comm)을 합친 금액이 가장 많은 경우와 가장 적은 경우, 평균 금액을 구하세요.

 


31. 부서별로 급여합계를 구하세요.

 


32. 급여가 3000이상이면, 급여+급여의 15%의 격려금을, 급여가 2000이상이면, 급여+급여의 10%의 격려금을,급여가 1000이상이면, 급여+급여의 5%의 격려금을, 그렇지 않으면 급여를 구하여, 이름, 직업, 급여,격려금을 표시하시오.

 


33. 'MARTIN'과 같은 매니저와 일하는 이름, 직업, 급여, 부서명, 지역을 구하세요.

 


34. 부서명이 'RESEARCH'인 사람의 이름, 직업, 급여,부서명을 표시하시오.

 


35. 각 부서별 평균 급여를 구하고, 그 중에서 평균 급여가 가장 적은 부서 의 평균 급여보다 적게 받는 사원들의 부서명, 지역, 급여를 구하세요.

 


36. 'BLAKE'와 같은 부서에 있는 사원들의 이름과 고용일을 뽑는데 'BLAKE'는 빼고 출력하라.

 


37. 이름에 'T'를 포함하고 있는 사원들과 같은 부서에서 근무하고있는 사원의 사원번호와 이름을 출력하라.

 


38. 자신의 급여가 평균 급여보다 많고, 이름에 'S'가 들어가는 사원과 동일한 부서에서 근무하는 모든 사원의 사원번호, 이

름, 급여를 출력하라.

 


39. 커미션을 받는 사원과 부서번호, 월급이 같은 사원의 이름, 월급, 부서번호를 출력하라.

 


40. 직업명이 'PRESIDENT' 이면 'A', 직업이 'ANALYST' 이면 'B', 직업이 'MANAGER' 이면 'C', 직업이 'SALESMAN' 이면 'D', 직업이 'CLEARK' 이면 'E' 로 표시하시오.

 


41. 10번 부서중에서 30번 부서에는 없는 업무를 하는 사원의 사원번호, 이름, 부서명,입사일, 지역을 출력하라.

 


42. 급여가 30번 부서의 최고 급여보다 높은 사원의 사원번호, 이름, 급여를 출력하라.

 


43. 급여가 30번 부서의 최저 급여보다 낮은 사원의 사원번호, 이름, 급여를 출력하라.

 


44. 사원 중에서 입사일이 가장 빠른 사원의 사원번호, 이름, 입사일, 부서명을 출력하세요.

 


45. 평균 연봉보다 많이 받는 사원들의 사원번호, 이름, 연봉을 연봉이 높은 순으로 정렬하여 출력하세요.

(연봉은 sal*12+comm으로 계산) IFNULL사용

 


46. EMP와 DEPT TABLE을 JOIN하여 부서 번호, 부서명, 이름, 급여를 출력하라.

 


47. 이름이 'ALLEN'인 사원의 부서명을 출력하라.

 


48. DEPT Table 에는 존재하는 부서코드이지만 해당부서에 근무하는 사람이 존재하지 않는 경우의 결과를 출력하라.

 

 

 

답안 : reeme.tistory.com/36