2과목. SQL 기본 및 활용
3장. 관리구문
1절. DML
# DML(Data Manipulation Language)
- 데이터의 삽입(INSERT), 수정(UPDATE), 삭제(DELETE), 병합(MERGE)
- 저장(commit) 혹은 취소(rollback)과정이 반드시 필요!
# INSERT
- 테이블에 행을 삽입할 때 사용
- 한 번에 한 행만 입력 가능(SQL Server에는 여러 행 동시 삽입 가능)
- 하나의 컬럼에는 한 값만 삽입 가능
- 컬럼별 데이터타입과 사이즈에 맞게 삽입
- INTO 절에 컬럼명을 명시하여 일부 컬럼만 입력 가능
➪ 작성하지 않은 컬럼은 NULL이 입력됨
➪ NOT NULL 컬럼의 경우 오류 발생
- 전체 컬럼에 대한 데이터 입력 시 테이블명 뒤의 컬럼명 생략 가능
- 문법
INSERT INTO 테이블 VALUES(값1, 값2, ....); ➪ 전체 컬럼의 값 입력
INSERT INTO 테이블(컬럼1, 컬럼2, ...) VALUES (값1, 값2, ....); ➪선택한 컬럼만 데이터 입력
# UPDATE
- 데이터 수정할 때 사용
- 컬럼 단위 수행
- 다중 컬럼 수정 가능
- 문법
① 단일컬럼 수정
UPDATE 테이블명
SET 수정할 컬럼명 = 수정값
WHERE 조건; ➪ 수정 대상 선택 가능
② 다중컬럼 수정
방법1)
UPDATE 테이블명
SET 수정컬럼명1 = 수정값1, 수정컬럼명2 = 수정값2, ....
WHERE 조건;
방법2)
UPDATE 테이블명
SET (수정컬럼명1, 수정컬럼명2, ....) = (SELECT 수정값1, 수정값2,...)
WHERE 조건;
* 서브쿼리의 결과가 수정할 각 행의 값마다 하나씩 전달되어야 함
# DELETE
- 데이터를 삭제할 때 사용
- 행 단위 실행
- 문법
DELETE [FROM] 테이블명
[WHERE 조건]; ➪ 삭제할 행 선택 가능
# MERGE
- 데이터 병합
- 참조 테이블과 동일하게 맞추는 작업(참조 테이블의 데이터 입력, 참조 테이블의 값으로 수정 등)
➪ INSERT, UPDATE, DELETE 작업을 동시에 수행
- 문법
MERGE INTO 테이블명
USING 참조테이블
ON ( 연결조건 )
WHEN MATCHED THEN
UPDATE
SET 수정 할 내용
WHEN NOT MATCHED THEN
INSERT VALUES ( 삽일 할 내용 )
'🖊️Certificate > 📌SQLD' 카테고리의 다른 글
[SQLD] 2과목 - 3장) 3절. DDL (0) | 2024.03.07 |
---|---|
[SQLD] 2과목 - 3장) 2절. TCL (0) | 2024.03.07 |
[SQLD] 2과목 - 2장) 8절. 정규 표현식 (1) | 2024.03.07 |
[SQLD] 2과목 - 2장) 7절. PIVOT 절과 UNPIVOT 절 (1) | 2024.03.07 |
[SQLD] 2과목 - 2장) 6절. 계층형 질의와 셀프 조인 (0) | 2024.03.07 |
댓글