Notice
Recent Posts
Recent Comments
Link
Tags
more
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Archives
Today
Total
관리 메뉴

JongDDA의 한걸음 한걸음씩

SQL - DML(데이터 조작 언어) 본문

개발/SQL

SQL - DML(데이터 조작 언어)

종따 2021. 7. 28. 21:16
728x90

 

DML (Data Manipulation Language)

: 데이터를 조작하는 명령어이다. 테이블에 데이터 검색, 삽입, 수정, 삭제하는 데 사용하며  INSERT, UPDATE , DELETE, MERGE 문 등이 있다. 

: 데이터를 조작하여 저장하는 일련의 과정을 트랜잭션(transaction)이라고 하는데 DML은 트랜잭션을 다루는 명령어이다.

 

 

INSERT

: 테이블에 새로운 데이터를 입력할 때 사용하는 명령어 읻다. 데이터를 입력할 때 숫자 값 이외에는 테이터를 ''(작은따옴표)로 감싸야 한다.

 

구조

INSERT INTO TABLE 테이블명(컬럼명1, 컬럼명2, ...)
VALUES (값1, 값2, ...);

EX)

INSERT INTO DEPT(DEPTNO, DNAME, LOC)
VALUES(50, 'PERSONNEL', 'TEXAS');

 

-> 새로운 데이터 추가되었다.

 

 

** 서브쿼리를 사용하여 여러 건의 데이터를 한꺼번에 입력할 수도 있다.

 

EX)

INSERT INTO DEPT2
SELECT * FROM DEPT;

* WHERE 1=2 는 거짓을 의미하고 특정 테이블의 구조만 복사하고자 할 때 사용한다.

(WHERE 1=1 로 하게 되면 구조와 내용 전부 복사된다.)

 

 

UPDATE

: 기존 데이터를 다른 데이터로 변경할 때 사용하는 방법

 

구조

UPDATE 테이블명
SET 컬럼명 = 값
WHERE 조건;

 

EX)

UPDATE DEPT2
SET DEPTNO = 1
WHERE LOC = 'TEXAS';

 

DELETE

: 데이터를 삭제하는 구문

 

구조

DELETE FROM 테이블명
WHERE 조건;

EX)

DELETE FROM DEPT2
WHERE DEPTNO BETWEEN 40 AND 50;

 

 

MERGE

: 여러 테이블의 데이터를 합치는 병합을 의미한다.

 

구조

MERGE INTO TABLE1
USING TABLE2
ON(병합 조건절)
WHEN MARCHED THEN
UPDATE SET 업데이트 내용
DELETE WHERE 조건
WHEN NOT MATCHED THEN
INSERT VALUES(컬럼 이름);

-> TABLE1 과 TABLE2의 내용을 합쳐서 TABLE1에 모으는 것

 

EX)

- > 테이블 2개 생성

-> 데이터 모을 집계용 테이블 생성

-> MERGE 작업 QUERY ( STUDENT 테이블과 ST_TOTAL 테이블 병합)

-> MERGE 작업 QUERY 2( STUDENT02 테이블과 ST_TOTAL 테이블 병합)

 

-> MERGE 후 테이블 조회 결과

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형

'개발 > SQL' 카테고리의 다른 글

SQL - Sub Query(서브 쿼리)  (0) 2021.07.31
SQL - VIEW(뷰)  (0) 2021.07.28
SQL - DDL(데이터 정의 언어)  (0) 2021.07.26
SQL - 조인(JOIN)  (0) 2021.07.25
SQL - 복수행 함수(그룹함수), GROUP BY 절  (0) 2021.07.25
Comments