MySQL

DELETE 구문

햄발자 2024. 6. 7. 16:16

 

 

DELETE 구문

 

DELETE 구문 은 특정 테이블에서 특정 조건을 만족하는 행을 삭제하는 데 사용됩니다. DELETE 구문 을 사용할 때는 삭제할 행을 신중하게 선택해야 합니다. DELETE 구문 을 사용하여 데이터를 삭제하면 복구하기 어렵거나 불가능할 수 있습니다. 따라서 DELETE 구문 을 사용하기 전에 데이터를 백업하거나, 테스트용 데이터를 사용하거나, WHERE 절 을 사용하여 조건을 만족하는 행을 선택하는 데 주의해야 합니다.

 

-- member 테이블에서 id가 3인 행 삭제
DELETE FROM member WHERE id = 3;

-- member 테이블에서 gender가 'F'이고 age가 20보다 큰 행 삭제
DELETE FROM member WHERE gender = 'F' AND age > 20;

 

 

코드예시

CREATE TABLE product (
  id INT PRIMARY KEY,
  name VARCHAR(50) NOT NULL,
  price INT NOT NULL,
  description VARCHAR(200)
);

INSERT INTO product (id, name, price, description) 
VALUES
(1, '아이폰 13', 1300000, 'Apple의 최신 모델 스마트폰'),
(2, '갤럭시 S21', 1200000, '삼성의 최신 모델 스마트폰'),
(3, '맥북 에어', 1500000, 'Apple의 대표적인 노트북'),
(4, 'LG 그램', 1300000, 'LG전자의 대표적인 노트북'),
(5, '아이패드', 800000, 'Apple의 태블릿'),
(6, '갤럭시 탭', 700000, '삼성의 태블릿'),
(7, '애플 워치', 500000, 'Apple의 스마트 워치'),
(8, '갤럭시 워치', 400000, '삼성의 스마트 워치'),
(9, '에어팟 프로', 300000, 'Apple의 무선 이어폰'),
(10, '갤럭시 버즈', 200000, '삼성의 무선 이어폰');

-- 가격이 1,000,000원 이상인 상품 삭제
delete
from product
where price >= 1000000;

select * from product;

-- 1	
-- 상품 설명에 'Apple'이 포함된 상품 삭제
delete
from product 
where description like '%Apple%';

-- 2 
-- 가격이 500,000원 이하이고, 상품 설명에 '스마트'가 포함된 상품 삭제
DELETE 
FROM product 
WHERE name LIKE '갤럭시%' 
	AND price > 500000;

-- 3
-- 상품 아이디가 2인 상품만 삭제
DELETE 
FROM 
product
WHERE id = 2;