SQL

[MYSQL] 데이터 삭제하는 방법 DELETE, DROP, TRUNCATE

초이준철 2022. 8. 8. 16:57

데이터를 삭제하는 방법은 크게 3가지가 있어요. 각 특징을 숙지하고 예시를 보면 좋아요.

1) DELETEWHERE 절을 통해서 조건을 걸고 데이터를 삭제할 수 있어요. 또한 행 단위로 데이터가 삭제돼요. (단, 테이블은 유지된다.)

2) DROP은 데이터만 삭제하는 것이 아니라 테이블 전체가 삭제돼요.

3) TRUNCATE은 DELETE와 달리 WHERE 절을 사용할 수 없어서 모든 행 데이터가 삭제돼요. (단, 테이블은 유지된다.)

 

DELETE 기본 형식

주의사항은 DELETE에 조건이 없다면 모든 행이 삭제된다는 것을 꼭 기억해야 해요.

DELETE FROM 테이블_이름 WHERE 조건;

 

예시) city 테이블 중 city_name에서 '대'로 시작하는 데이터를 삭제하는 방법

DELETE FROM city
	WHERE city_name LIKE '대%';
    
결괏값은 city_name에 대구, 대전 등.. '대'로 시작하는 모든 데이터 행이 삭제돼요

 

 

DROP 기본 형식

DROP TABLE 테이블_이름;

 

 

예시) city 테이블 삭제하는 방법

DROP TABLE city;

결괏값은 city 테이블 자체가 삭제돼요

 

 

TRUNCATE 기본 형식

TRUNCATE TABLE 테이블_이름;

 

예시) 모든 데이터는 삭제하되, 테이블은 남기는 방법

TRUNCATE TABLE city;

결괏값은 빈 city 테이블만 남고 안에 있는 모든 데이터는 삭제돼요