본문 바로가기

분류 전체보기59

[Oracle / 오라클] INSERT ALL, WHEN으로 조건별 다중 테이블에 일괄 INSERT 시키기 입력할 기준 테이블 조회 SELECT * FROM tb_point order by point; CUSTOMER_CD 기준 2017 ~ 2019개의 27개 로우 년도별 분리할 테이블 생성 TB_POINT_2017; TB_POINT_2018; TB_POINT_2019; INSERT ALL WHEN SUBSTR(REG_DTTM, 1, 4) = '2017' THEN INTO TB_POINT_2017 WHEN SUBSTR(REG_DTTM, 1, 4) = '2018' THEN INTO TB_POINT_2018 WHEN SUBSTR(REG_DTTM, 1, 4) = '2019' THEN INTO TB_POINT_2019 ELSE INTO TB_POINT_2019 SELECT CUSTOMER_CD, SEQ_NO, POI.. 2021. 5. 8.
[Oracle / 오라클] CREATE / ALTER/ TRUNCATE / DROP/ VIEW CREATE AS SELECT 무결성 제약조건은 새로운 테이블에 전달되지 않으며, 열 데이터 유형의 정의만 전달됨 CREATE TABLE newemp AS SELECT empno no, ename name, sal * 2salary FROM emp WHERE sal > 2000; ALTER TABLE 테이블이름 [ADD 컬러명 데이터타입] -- ((ADDRESS VARCHAR2(20), TEL VARCHAR2(13)) [DROP COLUMN 컬럼명] -- [MODIFY 컬럼명 데이터타입] [MODIFY 컬럼명 [NULL | NOT NULL]] [ADD PRIMARY KEY(컬럼명)] [[ADD | DROP] 제약조건이름] TRUNCATE TABLE 모든 데이터 삭제 / 롤백불가 / 속도 빠름 / DELE.. 2021. 4. 26.
[Oracle/오라클] MERGE - 조건에 따른 UPDATE / INSERT MERGE - 조건에 따라 갱신(UPDATE)하거나 입력(INSESRT)을 수행 문법설명 출처 - https://goddaehee.tistory.com/70 [갓대희의 작은공간] MERGE INTO table_name alias -- (실제 데이터를 INSERT 또는 UPDATE할 테이블) USING (table | view | subquery) alias -- 실제 데이터를 조회할 대상 테이블(뷰, 서브쿼리) -- 대상 테이블이 없는 경우 DUAL 테이블 사용 ON (join condition) -- 조건절 (Where절) 이 조건에 의해 아래 MATCHED / NOT MATCHED 로 분기 WHEN MATCHED THEN -- ON 조건에 해당하는 데이터(레코드)가 존재한다면 UPDATE SET [c.. 2021. 4. 24.
[Oracle/ 오라클] 서브쿼리를 이용한 INSERT, UPDATE, DELETE 서브쿼리를 이용한 INSERT 다른 테이블 SELECT하여 INSERT 방법 - 열개수가 일치해야 함 INSERT 대상 테이블의 칼럼명과, SELECT 테이블 칼럼명이 달라도 가능 INSERT INTO SAWON SELECT EMPNO, ENAME, SAL*2 FROM EMP WHERE DEPTNO =10; 서브쿼리를 이용한 UPDATE UPDATE emp SET JOB = (SELECT JOB FROM emp WHERE empno=7499), deptno = (SELECT deptno FROM dept WHERE dname = 'SALES') WHERE empno in (7369, 7782, 7788); 서브쿼리를 이용한 DELETE DELETE emp WHERE deptno = (SELECT dept.. 2021. 4. 24.