기본 삭제
ID가 2인 상품 삭제
DELETE FROM product
WHERE id = 2;
가격이 1,000,000원 이상인 상품 삭제
DELETE FROM product
WHERE price >= 1000000;
상품 설명에 'Apple'이 포함된 상품 삭제
DELETE FROM product
WHERE description LIKE '%Apple%';
복합 조건 삭제
가격이 500,000원 이하이고 상품 설명에 '스마트'가 포함된 상품 삭제
DELETE FROM product
WHERE price <= 500000 AND description LIKE '%스마트%';
상품명이 '갤럭시'로 시작하고 가격이 1,000,000원 이상인 상품 삭제
DELETE FROM product
WHERE name LIKE '갤럭시%' AND price >= 1000000;
도전 과제
ID가 5~8인 상품 삭제
DELETE FROM product
WHERE id BETWEEN 5 AND 8;
상품 설명에 '태블릿'이 포함된 상품 삭제
DELETE FROM product
WHERE description LIKE '%태블릿%';
가격이 300,000원 이하인 상품 삭제
DELETE FROM product
WHERE price <= 300000;
상품명이 '아이폰' 또는 '아이패드'로 시작하는 상품 삭제
DELETE FROM product
WHERE name LIKE '아이폰%' OR name LIKE '아이패드%';
가격이 1,000,000원 미만이고 설명에 '삼성'이 포함된 상품 삭제
DELETE FROM product
WHERE price < 1000000 AND description LIKE '%삼성%';
실습 쿼리
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. 기본 삭제
-- 1.1 문제 : id가 2인 상품 삭제
select *
from product
where id = 2;
delete from product
where id = 2;
-- 1.2 문제 : 가격이 100만원 이상인 상품들만 삭제해주세요
select *
from product
where price >= 1000000;
delete from product
where price >= 1000000;
-- insert, update, delete 는 결과 집합이 나오지 않는다.
-- 1.3 문제 : 상품 설명에 Apple 단어가 포함되지 않는 상품들만 삭제해 주세요
select *
from product
where not (description like 'Apple%');
delete from product
where not (description like 'Apple%');
-- 2. 복합 조건 삭제
-- delete from product;
-- 2.1 문제 : 가격이 500,000원 이하이고 상품 설명에 '스마트'가 포함된 상품들만 삭제하시오
select *
from product
where price <= 500000 and description like '%스마트%';
delete from product
where price <= 500000 and description like '%스마트%';
-- 2.2 문제 : 상품명이 갤럭시로 시작하고 가격이 100만원 이상인 상품들 삭제
select *
from product
where name like '%갤럭시%' and price >= 1000000;
delete from product
where name like '%갤럭시%' and price >= 1000000;
-- 도전 문제
-- 문제 1. 가격이 30만원 이하인 상품 삭제
select *
from product
where price <= 300000;
delete from product
where price <= 300000;
-- 문제 2. 상품명이 '아이폰' 또는 '아이패드'로 시작하는 상품 삭제
select *
from product
where name like'%아이폰%' or name like '%아이패드%';
delete from product
where name like'%아이폰%' or name like '%아이패드%';
-- 문제 3. 가격이 100만원 미만이고 설명에 '삼성'이 포함된 상품 삭제
select *
from product
where price < 1000000 and description like '%삼성%';
delete from product
where price < 1000000 and description like '%삼성%';'MySQL' 카테고리의 다른 글
| 관계 차수란? (0) | 2025.05.13 |
|---|---|
| PRIMARY KEY, FOREIGN KEY, UNIQUE KEY 란 뭘까? (0) | 2025.05.12 |
| DELETE 구문과 조건절 (0) | 2025.05.09 |
| UPDATE 연습 예제 (0) | 2025.05.09 |
| UPDATE 구문과 조건절 (0) | 2025.05.09 |