오늘은 DML (Data Manipulation Language) 내용을 정리해보려고 합니다 :)
DML이란?
데이터베이스 사용자 또는 응용 프로그램 소프트웨어가 컴퓨터 데이터베이스에 대해 데이터 검색, 등록, 삭제, 수정을 위한, 데이터베이스 언어 또는 데이터베이스 언어 요소이다.
[Index]
1. INSERT (데이터 추가)
2. UPDATE (데이터 수정)
3. DELETE (데이터 삭제)
1. INSERT
INSERT INTO 테이블명 (컬럼1, 컬럼2, ... )
VALUES (값1, 값2, ... )' ;
예시1)
<Code>
INSERT INTO Customers
VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway');
<Result>
CustomerID가 92인 행이 INSERT를 이용해서 추가한 데이터이다.
모든 컬럼의 값을 추가할 경우, 테이블명 뒤에 컬럼 리스트를 작성하지 않아도 된다.
예시2)
<Code>
INSERT INTO Customers (CustomerName, City, Country)
VALUES ('Cardinal', 'Stavanger', 'Norway');
<Result>
CustomerID가 92인 행이 INSERT를 이용해서 추가한 데이터이다.
ContactName, Address, PostalCode 컬럼은 INSERT 구문에 포함되지 않았기 때문에 null로 출력된다.
2. UPDATE
UPDATE 테이블명
SET 컬럼1 = 값1, 컬럼2 = 값2, ...
WHERE 조건 ;
예시1)
<Code>
UPDATE Customers
SET ContactName = 'Alfred Schmidt', City = 'Frankfurt'
WHERE CustomerID = 1;
<Result>
CustomerID가 1인 행의 ContactName과 City 컬럼의 값이 각각
Marla Anders → Alfred Schmidt
Berlin → Frankfurt 로 수정되었다.
<Customers_before_update>
예시2)
<Code>
UPDATE Customers
SET ContactName='Juan';
<Result>
Customers 테이블의 모든 행의 ContactName 값이 Juan으로 수정되었다.
이처럼 WHERE절로 조건을 설정해주지 않으면,
SET의 내용이 모든 행에 적용된다.
3. DELETE
DELETE FROM 테이블명
WHERE 조건 ;
예시1)
<Code>
DELETE FROM Customers
WHERE CustomerName='Alfreds Futterkiste';
<Result>
CustomerName이 'Alfreds Futterkiste'인 첫번째 행이 삭제되었다.
<Customers_before_delete>
예시2)
<Code>
DELETE FROM Customers;
<Result>
Customers 테이블의 모든 값이 삭제된다.
본 게시글은 인프런의 '[백문이불여일타] 데이터 분석을 위한 고급 SQL' 강의를 듣고 저의 생각을 바탕으로 강의 내용을 재구성하여 작성한 것입니다. 😀
참고)
https://www.w3schools.com/sql/sql_insert.asp
https://www.w3schools.com/sql/sql_update.asp
https://www.w3schools.com/sql/sql_delete.asp
'📖 STUDY > SQL' 카테고리의 다른 글
[SQL] 윈도우 함수 (0) | 2022.04.07 |
---|---|
[SQL] 서브쿼리 (0) | 2022.03.31 |
[SQL] UNION, UNION ALL (0) | 2022.03.15 |
[SQL] DATE_ADD, DATE_SUB (0) | 2022.03.15 |
[SQL] INNER JOIN, LEFT JOIN, RIGHT JOIN, SELF JOIN (0) | 2022.03.15 |