본문 바로가기

분류 전체보기

(518)
work 06 (view) -- 문제1) EMPLOYEES 테이블에서 20번 부서의 세부 사항을 포함하는 EMP_20 VIEW를 생성 하라 CREATE VIEW EMP_20 AS SELECT * FROM employees WHERE department_id = 20; SELECT * FROM emp_20; -- 문제2) EMPLOYEES 테이블에서 30번 부서만 EMPLOYEE_ID 를 emp_no 로 -- LAST_NAME을 name으로 SALARY를 sal로 바꾸어 EMP_30 VIEW를 생성하라. CREATE VIEW EMP_30 AS SELECT employee_id as emp_no, last_name as name, salary as sal FROM employees; SELECT * FROM emp_30; -- 문제3..
View View : 가상 테이블 실체가 없는 테이블. 다른 테이블을 접근하기 위한 테이블 Table read only (읽기전용) --기본 View -- VIEW 생성 CREATE VIEW UB_TEST_01(JOB_ID, JOB_TITLE, MIN_SALARY) AS SELECT job_id, job_title, min_salary FROM jobs; CREATE VIEW UB_VIEW( employee_id, first_name, salary ) AS SELECT employee_id, first_name, salary FROM tb_emp; -- VIEW에 데이터삽입 INSERT INTO ub_test_01(JOB_ID, JOB_TITLE, MIN_SALARY) VALUES('DEVELOPER','개발자'..
work 05 -- 문제1) EMPLOYEES 테이블에서 부서별로 인원수,평균 급여,급여의 합,최소 급여,최대 급여를 포함하는 -- EMP_DEPTNO 테이블을 생성하라. CREATE TABLE emp_deptno(deptno, e_count, e_avg, e_sum, e_min, e_max) AS SELECT department_id, COUNT(*), ROUND(AVG(salary), 1), SUM(salary), MIN(salary), MAX(salary) FROM employees GROUP BY department_id; DROP TABLE emp_deptno; SELECT * FROM emp_deptno; CREATE TABLE emp_deptno(deptno, e_count, e_avg, e_sum, e_..
work 04 -- 문제1) EMPLOYEES 테이블에서 (Kochhar의 급여)보다 많은 사원의 정보를 -- 사원번호,이름,담당업무,급여를 출력하라. SELECT employee_id, first_name, job_id, salary FROM employees WHERE salary > (SELECT salary FROM employees WHERE last_name = 'Kochhar'); -- 문제2) EMPLOYEES 테이블에서 (급여의 평균)보다 적은 사원의 정보를 -- 사원번호,이름,담당업무,급여,부서번호를 출력하여라. SELECT employee_id, first_name, job_id, salary, department_id FROM employees WHERE salary < (SELECT AVG(sa..
INDEX index : 색인, 검색 원하는 정보의 위치를 빠르고 정확하게 알아낼 수 있는 방법 --자동생성 : Primary Key, Unique Key 일 경우에는 내부에서 자동으로 생성됨 --수동생성 : Query문 생성했을 때 효율적인 경우 1. where절이나 join조건 안에서 자주 사용되는 column (주로 외래키 : 외래키는 PK,UK로 자동설정되어있음) 2. null 값이 많이 포함되어있는 컬럼 (comm, maniger_id) 3. where절이나 join조건 안에 두개이상을 사용하는 컬럼 생성했을 때 비효울적인 경우 1. table의 data의 수(row)가 적을 때(3000개 이하) 2. table이 자주 갱신되는 경우 --테이블 생성(기존 EMPLOYEES 테이블 COPY) -- 카피 : ..
Sequence(SEQ), 동의어 sequence : 유일한 값을 생성해주는 Oracle Object baseball +1 1001 -> 1002 -> 1003 ex) 회원번호, 게시판 관리번호 등 초기화 불가능, 삭제 후 다시 생성 int count = 1; count++; --EMPLOYEES테이블 시퀀스에 값 넣어보기 ->nextval을 통해 마지막 사원번호 다음 번호로 삽입됨. INSERT INTO employees(EMPLOYEE_ID, LAST_NAME, EMAIL, HIRE_DATE, JOB_ID) VALUES(EMPLOYEES_SEQ.nextval, '홍', 'HGD@NAVER.COM', '91/10/12', 'IT_PROG'); --nextval을 통해 마지막 사원번호 다음 번호로 삽입됨. --sequence의 생성 CR..
무결성 table 생성과 key, 외래키 무결성 : column에 적용 COLUMN을 지정하는 성질. 설정 Primary Key(PK) : 기본키. NULL을 허용하지 않는다. 중복을 허용하지 않는다. (EX, ID, 주민번호) Unique Key(UK) : 고유키. NULL을 허용한다. 중복을 허용하지 않는다. (EX, E-MAIL) Foreign Key : 외래키. 테이블과 테이블을 연결하는 목적의 성질이다. (JOIN의 목적이다), NULL허용 외래키로 설정된 컬럼은 연결된 테이블에서 PK나 UK로 설정되어 있어야 한다 CHECK : 범위를 설정. NULL을 허용 NOT NULL : NULL을 허용하지 않는다 ---FOREIGN KEY : 외래키 , 테이블끼리의 연결 --TABLE과 TABLE을 연결하기 위한 무결성 제약조건이다. --다른..
table 생성 및 셋팅 명령 Object - create, drop, select, alter Data - insert, delete, select, update --SYS --Query로 Tablespace 만들기 CREATE TABLESPACE TABLESPACE2 DATAFILE 'C:\TEST\TEST_TBS1_02.DBF' SIZE 10M --저장위치 AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED --추가되는 용량 LOGGING --로깅 사용 EXTENT MANAGEMENT LOCAL AUTOALLOCATE --자동 할당(로컬) BLOCKSIZE 8K --BLOCK 크기 8K SEGMENT SPACE MANAGEMENT AUTO FLASHBACK ON; --TABLE SPACE 수정 --1. ..