본문 바로가기
programming/DataManage

mysql 데이터 삭제 delete from 테이블명 using mysql delete command

by 개코 - 개발과 코딩 2022. 4. 21.

mysql 에서 DELETE 는 테이블의 데이터를 삭제하는 명령어이다. DELETE 구문 사용시 유의할 사항은 조건절을 사용해야 한다는 것이다. 테이블의 전체 데이터를 삭제하는 것이라면 WHERE 조건절을 사용하지 않아도 되지만, 특정 데이터만을 삭제하고자 한다면 반드시 WHERE 조건절을 사용하여 데이터 삭제에 조심해야 한다.

mysql 데이터 삭제 delete from 테이블명
using mysql delete command

데이터 조작시 필요한 것은 추가, 수정도 있지만 삭제도 있다.

불필요한 데이터는 삭제하여 테이블의 저장 공간을 줄일 필요가 있다. 방대해진 데이터는 중요한 데이터의 방해요소가 될 수도 있기데 필수적으로 사용되는 테이블에서 잘 사용하지 않는 데이터는 삭제할 필요가 있다.

어쨌든 쌓여있는 데이터는 추후 사용하지 않을 것이라면 백업 후 삭제를 하는 것이 좋다.

mysql 에서 데이터를 삭제할 때 사용하는 명령어는 delete 이다.

다만 이 delete 명령어는 수정을 위한 update 와 마찬가지로 조건절을 붙여 모든 자료가 삭제되는 것을 조심해야 할 필요가 있다.

데이터의 삭제 delete

아래는 mysql 에서 데이터를 삭제하는 기본적인 명령어 이다.

테이블에 들어있는 값을 삭제하기 위해 DELETE 명령어를 사용하지만 전체 내용을 삭제하지 않는 것이라면 WHERE 조건절을 이용하여 삭제할 자료만 처리한다.

WHERE 조건절은 AND 또는 OR 연산자를 사용하여 특정 값을 분류할 수 있다.

목록이 될 수 있고, 단건의 데이터가 될 수도 있다.

/** tb_sample 테이블 데이터 삭제  */
DELETE FROM 테이블명
 WHERE 컬럼명 = 값
   AND 컬럼명 = 값
    OR 컬럼명 = 값
;

샘플코드

위의 내용으로 mysql 의 DELETE 에 대한 mysql 예제를 만들어 본다.

테이블을 추가하고 삭제하는 일련의 과정이 있지만 DELETE 구문만 확인하자.

입력된 데이터는 하나지만, 그 하나의 데이터도 명시적으로 조건절을 이용하여 삭제를 처리하였다.

테이블의 전체 데이터 내용을 삭제하는 것이 아니라면 WHERE 조건절을 이용해 특정 데이터만 분류하도록 한다.

/** tb_sample 테이블을 생성 */
CREATE TABLE tb_sample (
	idx INT,
	title VARCHAR(250),
	content TEXT,
	insert_date DATETIME,
	update_date DATETIME
)
;

/** tb_sample 테이블에 데이터 추가  */
INSERT INTO tb_sample
(
	idx,
	title, content,
	insert_date, update_date
)
VALUES
(
	'1',
	'제목1', '내용2',
	NOW(), NOW()
)
;

SELECT * FROM tb_sample
;

/** tb_sample 테이블 데이터 삭제  */
DELETE FROM tb_sample
 WHERE idx = '1'
;

SELECT * FROM tb_sample
;

/** tb_sample 테이블 데이터 완전 삭제  */
TRUNCATE tabLE tb_sample
;

/** tb_sample 테이블 삭제  */
DROP TABLE tb_sample
;

/*-----*/
반응형

댓글