DML - INSERT / UPDATE / DELETE

ㅎㄱㅇ·2024년 1월 30일
0

DB공부

목록 보기
10/14

✨ INSERT - 데이터 삽입


1. 모든 컬럼에 데이터를 추가할 때

컬럼에 대한 값이 적거나 많으면 오류 발생

INSERT INTO 테이블명 VALUES(,,, ...)

2. 특정 컬럼에만 데이터를 추가할 때

  • 컬럼의 개수와 값의 개수가 동일해야하고, 타입과 순서도 맞춰줘야 함
  • 지정하지 않은 컬럼에는 NULL 또는 DEFAULT값이 저장됨
INSERT INTO 테이블명(컬럼1, 컬럼2, 컬럼3) VALUES(1,2,3)

3. 서브쿼리를 사용하여 데이터를 추가할 때

3-1. 테이블 한 개에 추가할 때

INSERT INTO 테이블명(서브쿼리);

3-2. 여러 개의 테이블에 추가할 때

하나의 서브쿼리 결과로 여러 개의 테이블에 데이터 추가

INSERT ALL
	INTO 테이블명(A) VALUES(컬럼명, 컬럼명, ...)
	INTO 테이블명(B) VALUES(컬럼명, 컬럼명, ...)
서브쿼리;

3-3. 테이블별로 조건에 따라 데이터를 추가할 때

INSERT ALL
	WHEN 조건식1 THEN
    	INTO 테이블명(A) VALUES (컬럼명, 컬럼명, ...)
    WHEN 조건식2 THEN
		INTO 테이블명(B) VALUES (컬럼명, 컬럼명, ...)
서브쿼리;



✨ UPDATE - 데이터 수정


UPDATE 테이블명
SET 컬럼 = 바꿀값,
	컬럼 = 바꿀값,
WHERE 조건식	--> WHERE절 생략 시 전체 데이터를 대상으로 변경이 됨

2. 서브쿼리 사용

변경하는 컬럼에 서브쿼리 결과로 데이터 수정

UPDATE 테이블명
SET 컬럼 = (서브쿼리)
[WHERE 조건식]

서브쿼리 결과를 WHERE절의 조건식에 사용하여 데이터 수정

UPDATE 테이블명
SET 컬럼 =WHERE 비교컬럼 = (서브쿼리)



✨ DELETE - 데이터 삭제


DELTE FROM 테이블명 [WHERE 조건식];
-- WHERE절 생략 시 해당 테이블의 모든 데이터가 삭제

0개의 댓글