본문 바로가기

Study/Oracle

(32)
[oracle] create * APT_INFO, DONG_INFO, HO_INFO TABLE 만들기 Q. 한 테이블에 PRIMARY KEY를 2개 써도되나요? A. 한테이블에 하나의 PRIMARY KEY 만 있을수 있고, PRIMARY KEY는 여러개의 필드로 구성가능. * Key 생성은 우선 빼고, 테이블만 생성하고 나서 키 다시 생성해주는게 보통. ex) ALTER TABLE NCCJST2011.METRO_STATN_PATH ADD ( CONSTRAINT XPK_METRO_STATN_PATH PRIMARY KEY (INTERCD, METROCD) ex) Alter table MyForeignTable Add constraint MyForegin_FK_MyTable Foreign Key (FieldA, FieldB) Refere..
[oracle] oracle 정리 - 테이블 생성(제약 조건 포함) - DML(INSERT, UPDATE, DELETE) - 쿼리검색(조인, 서브쿼리 포함) - 함수(기본적인 함수) - 정규화
[oracle] VIEW, 시퀀스, 인덱스, 데이터모델링 실습 *각 부서별로 가장 최근에 입사한 사원 보다 먼저 입사한 사원의 정보를 구하자 SELECT E.EMPNO, E.ENAME, E.HIREDATE, E.DEPTNO, MAX_HIREDATE FROM EMP E, (SELECT DEPTNO, MAX(HIREDATE) MAX_HIREDATE FROM EMP GROUP BY DEPTNO)D WHERE E.DEPTNO=D.DEPTNO AND E.HIREDATE 사원 내에서 월급이 가장 많은 직원 중 3명 출력하시오 SELECT ROWNUM, ENAME, SAL FROM (SELECT ENAME, SAL FROM EMP ORDER BY SAL DESC) WHERE ROWNUM
[oracle] VIEW, 시퀀스, 인덱스, 데이터모델링 oin이 하는 과정들 서브쿼리 반복, 망각의동물 VIEW- 하나의 창 역할 1. 조인 - 복잡한 쿼리문을 단순화 시키기 위해 2. 보안 - 특수한 내용들을 제외한 것을 보여주기 위해 SCOTT계정에 VIEW에 대한 권한 부여 ->GRANT CREATE VIEW TO SCOTT; 뷰 생성 ->CREATE VIEW VIEW_EMP10 AS SELECT EMPNO, ENAME, DEPTNO FROM EMP WHERE DEPTNO=10; SELECT * FROM VIEW_EMP10; 뷰 데이터 딕셔너리 DESC USER_VIEWS; TEXT->VIEW의 생성과정을 출력 SELECT VIEW_NAME, TEXT FROM USER_VIEWS; 단순 뷰 - 하나의 테이블로 생성 ->INSERT INTO VIEW_EM..
[oracle] 무결성 제약조건, JOIN, 서브쿼리 실습 ->테이블 딕셔너리(테이블 확인 가능) 보라색 부분만 수정 SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, TABLE_NAME, R_CONSTRAINT_NAME, SEARCH_CONDITION FROM USER_CONSTRAINTS WHERE TABLE_NAME = 'CH10_MEMBER'; CHAP10 - 1 CREATE TABLE CH10_MEMBER( ID VARCHAR2(20) CONSTRAINT CH10_MEMBER_ID_PK PRIMARY KEY, NAME VARCHAR2(20) NOT NULL, REGNO VARCHAR2(20) NOT NULL, HP VARCHAR2(13) CONSTRAINT CH10_MEMBER_HP_UQ UNIQUE, ADDRESS VARCHAR..
[oracle] 무결성 제약조건, JOIN, 서브쿼리 제약 조건 PRIMARY KEY FOREIGN KEY 컬럼 레벨 방식으로 제약 조건 지정하기 //CONSTRAINT [테이블명]_[컬럼명]_[제약 조건 유형] CREATE TABLE EMP05( EMPNO NUMBER(4) CONSTRAINT EMP05_EMPNO_PK PRIMARY KEY ); 테이블 레벨 방식으로 제약 조건 지정하기 1, 복합 키로 기본 키를 지정할 경우 - 2개 이상의 컬럼이 하나의 기본 키를 구성하는 경우 2. 복합 키는 반드시 테이블 레벨 방식 3. NOT NULL 조건은 반드시 컬럼 레벨 방식 //CONSTRAINT를 사용하여 제약 조건명 지정하기 CREATE TABLE EMP04( EMPNO NUMBER(4), ENAME VARCHAR2(10) CONSTRAINT EMP04_..
[oracle] SQL 함수 실습 과제1> 다음은 현재 날짜에서 2006/01/01을 뺀 결과를 출력해 보자.(TO_DATE) 결과> 1296 ->SELECT SYSDATE, TRUNC(SYSDATE-TO_DATE('2006/01/01', 'YYYY/MM/DD')) FROM DUAL; 과제2> 다음 날짜와 시간을 출력해 보자. 결과>2009/07/20 10:19:05 ->SELECT TO_CHAR(SYSDATE, 'YYYY/MM/DD HH24:MI/SS') FROM DUAL; 과제3> 다음은 sal을 6자리로 바꾸고 앞에 $를 붙여보자. 결과> smith $600 allen $1,600 등등 ->SELECT ENAME, SAL, TO_CHAR(SAL, '$999,999') FROM EMP WHERE ENAME IN('SMITH', 'AL..
[oracle] SQL의 함수, DDL, 트랜잭션, 무결성 제약조건 select * from deptno where deptno = 10; 핵심은 where절 - 어떻게 조건은 다느냐에 따라서 출력되는 결과물이 달라진다. between and ~에서 ~사이까지 in 해당하는 요소만 출력(or 연산자의 줄임) - 비일비재하게 많이씀 평균, 합계 -> 연산 -> 함수가 지원된다. 많이 사용하는 기준으로 공부.. SQL 함수 dual 테이블 - 산술 연산이나 가상 컬럼 등의 값을 한 번만 출력하고 싶을 때 문자함수 LOWER -> SELECT 'DataBase', LOWER('DataBase') FROM DUAL; UPPER -> SELECT 'DataBase', UPPER('DataBase') FROM DUAL; INITCAP - 첫 글자만 대문자 나머지는 소문자 -> SE..