⇥ DevOps Tech 🙋🏻♀️/✏️ ORACLE
[ORACLE] 삭제 (DELETE)
[ORACLE] 삭제 (DELETE)
2020.08.31삭제 (DELETE) 불필요한 데이터를 테이블에서 제거하기 위해 사용하는 SQL 삭제의 구성 요소 DELETE FROM 테이블명 : 삭제하고자 하는 데이터를 저장하고 있는 테이블 명 WHERE 조건절; : 삭제하고자 하는 데이터 조건 설정 일반 예제 DELETE FROM 사원 WHERE 사원번호 = 1006; 서브쿼리를 이용한 삭제 DELETE FROM 사원 WHERE 부서번호 IN ( SELECT 부서번호 FROM 부서 WHERE 부서이름 = '기술팀'); * DELETE 수행 시 주의 사항 DELETE 수행 시 WHERE 조건절이 생략되면 테이블의 모든 데이터가 제거되므로 주의 만약 모든 데이터를 제거해야 한다면 DELETE 는 많은 성능 저하가 발생하기 때문에, TRUNCATE 를 이용하는 것이 유..
[ORACLE] 갱신 (UPDATE)
[ORACLE] 갱신 (UPDATE)
2020.08.29갱신 (UPDATE) 테이블의 데이터 값을 변경하기 위해 사용하는 SQL 갱신을 수행할 경우 한 번에 하나의 컬럼만 갱신할 수도 있고, 여러 개의 컬럼을 갱신할 수도 있다. 갱신의 구성요소 UPDATE TEST SET COL1 = 'AA' WHERE COL2 = '20200829'; UPDATE 테이블명 변경하고자 하는 데이터를 저장하고 있는 테이블의 이름 SET 컬럼명 변경 대상에 대한 변경 후의 값 제공 WHERE 조건절 변경을 수행하고자 하는 대상 COL2 컬럼이 20200829 의 값을 가진 행에 대한 COL1 의 값을 AA로 갱신하는 SQL 문이다. 만약 WHERE 절이 지정되어있지 않다면 모든 행의 COL1 이 AA로 갱신된다. 삽입은 테이블에 존재하는 모든 인덱스에 관련되지만 갱신은 해당 컬..
[ORACLE] 삽입 - 2 / DIRECT LOADING ,MULTI INSERT
[ORACLE] 삽입 - 2 / DIRECT LOADING ,MULTI INSERT
2020.08.27대용량의 데이터에 대해서는 SELECT 절을 이용할 때 직접 로딩 또는 병렬 프로세싱으로 성능 향상을 기대할 수 있다. 직접 로딩(DIRECT LOADING) 을 구현할 때는 테이블을 NOLOGGING 모드로 변경한 후 수행하는 것이 성능에 유리하다. ALTER TABLE 테이블 NOLOGGING; INSERT /* + APPEND */ INTO 테이블(컬럼1, 컬럼2, 컬럼3) SELECT 컬럼4, 컬럼5, 컬럼6 FROM 임시테이블; ALTER TABLE 테이블 LOGGING; 이런 직접 로딩(DIRECT LOADING) 하는 프로세스를 여러 개 기동시켜 한번에 여러 개의 프로세스가 데이터를 저장하는 것을 병렬 프로세싱이라고 한다. 특수 데이터 삽입 NULL NULL 값을 테이블에 저장하고자 한다면 ..
[ORACLE] 삽입 (INSERT) - 1
[ORACLE] 삽입 (INSERT) - 1
2020.08.26삽입 (INSERT) : 발생한 데이터를 특정 테이블에 저장하기 위해 사용하는 SQL 삽입의 구성 요소 삽입 문장 1 INSERT INTO 테이블명 (컬럼명1, 컬럼명2, 컬럼명3 ...) VALUES (값1, 값2, 값3, ...); INSERT INTO .. : 데이터를 저장하기 위한 테이블명 및 컬럼명 지정 VALUES ... : 저장하고자 하는 데이터 삽입 문장 2 INSERT INTO 테이블명 (컬럼명1, 컬럼명2, 컬럼명3 ...) SELECT 컬럼명1, 컬럼명2, 컬럼명3... FROM 테이블명 WHERE 조건절 기타; INSERT INTO .. : 데이터를 저장하기 위한 테이블명 및 컬럼명 지정 SELECT ~ : 조회문 제공 * 데이터 삽입의 종류에 따른 차이 VALUES 이용 : 데이터..
[ORACLE] 행 제한
[ORACLE] 행 제한
2020.08.25행 제한 특정 조건에 따라 행 개수를 제한하기 위해 사용하는 SQL OFFSET 건수 { ROW | ROWS } FETCH { FIRST | NEXT } { 건수 | 숫자 PERCENT } {ROW | ROWS} { ONLY | WITH TIES } ORDER BY SQL 수행 결과의 정렬 기준 OFFSET 행의 시작 지점을 지정 FETCH 반환할 행 또는 행의 비율을 지정 ONLY 행의 수 또는 비율을 정확하게 지정한 값만큼 반환 SELECT 사번, 이름 FROM 사원 ORDER BY 이름 ASC OFFSET 2 ROW FETCH FIRST 3 ROWS ONLY ; - 오름차순으로 정렬 후 , 2번째 행에서 부터 3건을 조회하는 SQL * FIRST / NEXT , ROW / ROWS 의 기능의 차이는..