조인 실습 문제

Hyunsu·2023년 3월 12일
0

국비 교육

목록 보기
29/36
post-thumbnail

실습 문제 1

🚩 조인 문제 1

주민번호가 70년대생이면서 성별이 여자이고 성이 전씨인 직원들의
사원명, 주민번호, 부서명, 직급명을 조회하시오

소스 코드

SELECT EMP_ID, EMP_NAME, DEPT_TITLE, JOB_NAME
FROM EMPLOYEE
JOIN DEPARTMENT ON(DEPT_CODE = DEPT_ID)     
JOIN JOB USING(JOB_CODE)
WHERE SUBSTR(EMP_NO, 1, 1) = '7'
AND SUBSTR(EMP_NO, 8, 1) = '2'
AND EMP_NAME LIKE '전%';

실습 문제 2

🚩 조인 문제 2

이름에 '형' 자가 들어가는 직원들의 사번, 사원명, 부서명을 조회하시오

소스 코드

SELECT EMP_ID, EMP_NAME, DEPT_TITLE
FROM EMPLOYEE 
JOIN DEPARTMENT ON(DEPT_CODE = DEPT_ID)
WHERE EMP_NAME LIKE '%형%';

실습 문제 3

🚩 조인 문제 3

해외영업 1부와 2부에 근무하는 사원의 사원명, 직급명, 부서코드, 부서명을 조회하시오

소스 코드

SELECT EMP_NAME, JOB_NAME, DEPT_CODE, DEPT_TITLE
FROM EMPLOYEE
JOIN JOB USING(JOB_CODE)
JOIN DEPARTMENT ON (DEPT_CODE = DEPT_ID)
WHERE DEPT_TITLE IN('해외영업1부', '해외영업2부');

실습 문제 4

🚩 조인 문제 4

보너스포인트를 받는 직원들의 사원명, 보너스포인트, 부서명, 근무지역명을 조회하시오

소스 코드

SELECT EMP_NAME, BONUS, DEPT_TITLE, LOCAL_NAME
FROM EMPLOYEE
JOIN DEPARTMENT ON(DEPT_CODE = DEPT_ID)
JOIN LOCATION ON(LOCATION_ID = LOCAL_CODE)
WHERE BONUS IS NOT NULL;

실습 문제 5

🚩 조인 문제 5

부서가 있는 사원의 사원명, 직급명, 부서명, 지역명 조회

소스 코드

SELECT EMP_NAME, DEPT_TITLE, JOB_NAME, LOCAL_NAME
FROM EMPLOYEE
NATURAL JOIN JOB
JOIN DEPARTMENT ON (DEPT_ID = DEPT_CODE)
JOIN LOCATION ON (LOCATION_ID = LOCAL_CODE);

실습 문제 6

🚩 조인 문제 6

급여등급별 최소급여(MIN_SAL)를 초과해서 받는 직원들의
사원명, 직급명, 급여, 연봉(보너스포함)을 조회하시오

단 연봉에 보너스 포인트를 적용하시오

소스 코드

SELECT EMP_NAME, JOB_NAME, SALARY, SALARY * (1 + NVL(BONUS,0)) * 12 연봉
FROM EMPLOYEE
NATURAL JOIN JOB
JOIN SAL_GRADE USING(SAL_LEVEL)
WHERE SALARY > MIN_SAL
ORDER BY EMP_ID;

실습 문제 7

🚩 조인 문제 7

한국(KO)과 일본(JP)에 근무하는 직원들의 사원명, 부서명, 지역명, 국가명을 조회하시오

소스 코드

SELECT EMP_NAME 사원명, DEPT_TITLE 부서명, LOCAL_NAME 지역명, NATIONAL_NAME 국가명
FROM EMPLOYEE
JOIN DEPARTMENT ON (DEPT_CODE = DEPT_ID)
JOIN LOCATION ON (LOCATION_ID = LOCAL_CODE)
JOIN NATIONAL USING(NATIONAL_CODE)
WHERE NATIONAL_NAME IN('한국', '일본')
ORDER BY EMP_ID; 

실습 문제 8

🚩 조인 문제 8

같은 부서에 근무하는 직원들의 사원명, 부서코드, 동료이름을 조회하시오

소스 코드

SELECT EMP.EMP_NAME, EMP.DEPT_CODE, LOYEE.EMP_NAME 
FROM EMPLOYEE EMP
-- JOIN EMPLOYEE LOYEE USING(DEPT_CODE);
JOIN EMPLOYEE LOYEE ON(EMP.DEPT_CODE = LOYEE.DEPT_CODE)
-- WHERE EMP.EMP_NAME != LOYEE.EMP_NAME 
WHERE EMP.EMP_ID != LOYEE.EMP_ID
ORDER BY 1;

실습 문제 9

🚩 조인 문제 9

보너스포인트가 없는 직원들 중에서 직급코드가 J4와 J7인
직원들의 사원명, 직급명, 급여를 조회하시오

단 JOIN과 IN 사용할 것

소스 코드

SELECT EMP_NAME, JOB_NAME, SALARY
FROM EMPLOYEE
JOIN JOB USING(JOB_CODE)
WHERE JOB_CODE IN('J4', 'J7')
AND BONUS IS NULL;
profile
현수의 개발 저장소

0개의 댓글