JongDDA의 한걸음 한걸음씩
SQL - DML(데이터 조작 언어) 본문
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