본문 바로가기

DB/Oracle21

[Oracle] VIEW 뷰 VIEW 추출하고자 하는 대상을 줄여나가는 작업FROM절에 보고싶은 조건을 적어 가상의 테이블을 만든다. EMP_DETAILS_VIEW를 FROM절에 적고 출력하면EMP의 모든 값이 출력된다.이 뷰는 사실 아래 코드와 같다. LAST_NAME에 u가 포함되는 사원테이블을 FROM절에 적어 뷰로 만든다. ID가 1700인 부서에서 근무하는 사원 테이블을 뷰로 만들 뒤 조건을 적어준다. 조건이 여러개 있을 경우 INLINE VIEW를 중첩하여 만들 수 있다. 2016. 2. 18.
[Oracle] 어느 쿼리가 더 빠를까 18. 자신의 매니저보다 먼저 고용된 사원들의 LAST_NAME 및 고용일을 조회한다.는 문제를 풀어보았다.JOIN을 이용하고 서브쿼리를 이용하는 방법과JOIN만 이용하는 방법이 있었다. SELECT LAST_NAME , HIRE_DATEFROM EMPLOYEES EWHERE HIRE_DATE < ( SELECT HIRE_DATE FROM EMPLOYEES E2 WHERE E.MANAGER_ID = E2.EMPLOYEE_ID ); SELECT EMP.LAST_NAME , EMP.HIRE_DATEFROM EMPLOYEES EMP , EMPLOYEES MGRWHERE EMP.MANAGER_ID = MGR.EMPLOYEE_IDAND EMP.HIRE_DATE < MGR.HIRE_DATE; 누가 더 빠를까?알아보.. 2016. 2. 18.
[Oracle] 테이블 조인( JOIN ) EXCEL로 HR테이블을 만들어보았다. EMPLOYEE_ID, LAST_NAME, DEPARTMENT_ID는 EMPLOYEE테이블에 있지만DEPARTMENT_NAME은 DEPARTMENTS테이블에만 있다.따라서 모두 출력하고 싶으면 EMPLOYEES테이블과 DEPARTMENTS테이블을 조인해야한다.FROM절에서 EMPLOYEES 테이블은 E로 명명 해준다.(ALIAS)DEPARTMENTS테이블은 D로 ALIAS해준다.SELECT절에서 출력하고 싶은 컬럼명을 적고WHERE절에서 조인을 시켜주는데 EMPLOYEE테이블의 DEPARTMENT_ID 를 E.DEPARTMENT_ID로 적고DEPARTMENTS테이블의 DEPARTMENT_ID를 D.DEPARTMENT_ID로 적은뒤둘을 같다고 해주면 E.DEPARTM.. 2016. 2. 17.
[Oracle] 테이블 제약조건 PK : Primary Key나를 나타내는 값, 중복이 일어나서는 안된다.테이블의 전체 컬럼이 PK가 될수 있다.하나있으면 다른곳을 참조 가능하다. FK : Foreign Key다른 테이블의 PK다른 테이블을 참조할 수 있게 해줌FK는 중복이 가능하다 ( 즉 한 FK를 여러번 참조할 수 있다) DEPARTMENTS 테이블의 DEPT_ID(PK)를 참조 자기 테이블에서 참조하는 경우이다.(재귀참조)MANAGER_ID는 EMPLOYEE_ID이므로 같은 테이블 안에서 참조한다. DEPARTMENT-DEPARTMENT_ID(PK) : EMPLOYEE-DEPARTMENT_ID(FK) = 1 : 다하나의 부서에는 여러 EMPLOYEE가 존재하고 있다.( EMPLOYEES 테이블에 있는 DEPARTMENT_ID이다... 2016. 2. 17.