1. 부서가 인사관리부인 사원들의 사번, 이름 ,보너스 조회

>>오라클전용구문

SELECT EMP_ID,EMP_NAME,BONUS
FROM EMPLOYEE , DEPARTMENT
WHERE  DEPT_CODE = DEPT_ID
      AND DEPT_TITLE = '인사관리부';

 


>>ANSI구문

SELECT EMP_ID, EMP_NAME,BONUS
FROM EMPLOYEE
JOIN DEPARTMENT ON (DEPT_CODE= DEPT_ID)
WHERE DEPT_TITLE = '인사관리부';

---------------------------------

SELECT EMP_ID, EMP_NAME,BONUS
FROM EMPLOYEE
JOIN DEPARTMENT ON (DEPT_CODE= DEPT_ID AND DEPT_TITLE = '인사관리부'); 
--> ON뒤에 조건식을 작성하는 자리이기 때문에 추가적인 조건을 기술해도됨



2. DEPARTMENT와 LOCATION을 참고해서 전체 부서들의 부서코드, 지역코드, 지역명 조회

>>오라클 전용구문

SELECT DEPT_ID, LOCATION_ID, LOCAL_NAME
FROM DEPARTMENT, LOCATION
WHERE LOCATION_ID = LOCAL_CODE;


>>ANSI구문

SELECT DEPT_ID, LOCATION_ID, LOCAL_NAME
FROM DEPARTMENT
JOIN LOCATION ON (LOCATION_ID = LOCAL_CODE);



3.보너스를 받는 사원들의 사번, 사원명, 보너스 부서명 조회

>>오라클 전용구문

SELECT EMP_ID, EMP_NAME, BONUS, DEPT_TITLE
FROM EMPLOYEE, DEPARTMENT
WHERE DEPT_CODE = DEPT_ID 
     AND BONUS IS NOT NULL;


>>ANSI구문 

SELECT EMP_ID, EMP_NAME, BONUS, DEPT_TITLE
FROM EMPLOYEE
JOIN DEPARTMENT ON DEPT_CODE = DEPT_ID 
WHERE BONUS IS NOT NULL;



4. 부서가 총무부가 아닌 사원들의 사원명, 급여 조회

>>오라클 전용구문

SELECT EMP_NAME, SALARY
FROM EMPLOYEE, DEPARTMENT
WHERE DEPT_CODE = DEPT_ID 
  AND DEPT_TITLE <> '총무부';


>>ANSI구문

SELECT EMP_NAME, SALARY
FROM EMPLOYEE
JOIN DEPARTMENT ON DEPT_CODE = DEPT_ID
WHERE DEPT_TITLE != '총무부';

'ORACLE > ORACLE 실습문제' 카테고리의 다른 글

ORACLE 실습문제 _ 종합실습문제 _오답노트  (1) 2022.11.29
ORACLE 실습문제 _PLSQL  (0) 2022.11.25
복사했습니다!