DB/SQL 예제

CRUD 예제

ssury94 2024. 11. 27. 13:08

세팅

 

데이터베이스 test5
테이블 product
컬럼 id - int, pri, not null, auto increment
product_name - varchar(100)
category - varchar(50)
price - int
stock_quantity -int
created_at - timestamp
더보기
INSERT INTO product (product_name, category, price, stock_quantity, created_at) VALUES
('삼성 스마트폰', '전자제품', 850000, 50, '2023-01-15'),
('LG 냉장고', '가전제품', 1200000, 30, '2023-01-20'),
('다이슨 청소기', '가전제품', 550000, 20, '2023-02-05'),
('필립스 전기면도기', '개인용품', 80000, 15, '2023-02-10'),
('삼성 TV', '전자제품', 1500000, 25, '2023-02-15'),
('애플 아이패드', '전자제품', 700000, 40, '2023-03-01'),
('샤오미 공기청정기', '가전제품', 180000, 35, '2023-03-10'),
('구찌 가방', '패션', 2300000, 10, '2023-03-15'),
('나이키 운동화', '패션', 120000, 100, '2023-03-20'),
('프라다 지갑', '패션', 850000, 15, '2023-03-25'),
('유한양행 감기약', '의약품', 5000, 500, '2023-04-01'),
('종근당 소화제', '의약품', 3000, 400, '2023-04-05'),
('블루보틀 원두커피', '식품', 20000, 100, '2023-04-10'),
('일리 캡슐커피', '식품', 10000, 200, '2023-04-15'),
('맥북 프로', '전자제품', 2500000, 15, '2023-04-20'),
('레노버 노트북', '전자제품', 1000000, 20, '2023-04-25'),
('삼성 에어컨', '가전제품', 1500000, 18, '2023-05-01'),
('LG 세탁기', '가전제품', 800000, 22, '2023-05-05'),
('베스킨라빈스 아이스크림 케이크', '식품', 25000, 80, '2023-05-10'),
('바나나우유', '식품', 1200, 300, '2023-05-15'),
('코카콜라', '식품', 1500, 400, '2023-05-20'),
('마이크로소프트 서피스', '전자제품', 1400000, 10, '2023-06-01'),
('레고 스타워즈', '완구', 250000, 35, '2023-06-10'),
('닌텐도 스위치', '전자제품', 350000, 60, '2023-06-15'),
('플레이스테이션5', '전자제품', 500000, 25, '2023-06-20'),
('버버리 스카프', '패션', 300000, 12, '2023-06-25'),
('유한양행 비타민C', '의약품', 8000, 200, '2023-07-01'),
('다우니 섬유유연제', '생활용품', 15000, 100, '2023-07-05'),
('애플 에어팟', '전자제품', 220000, 30, '2023-07-10'),
('삼성 태블릿', '전자제품', 600000, 40, '2023-07-15'),
('스타벅스 커피빈', '식품', 18000, 150, '2023-07-20'),
('페리오 치약', '생활용품', 3000, 300, '2023-07-25'),
('설화수 크림', '화장품', 120000, 50, '2023-08-01'),
('헤라 립스틱', '화장품', 35000, 80, '2023-08-05'),
('아이폰 14', '전자제품', 1300000, 15, '2023-08-10'),
('갤럭시 탭', '전자제품', 750000, 22, '2023-08-15'),
('LG 울트라 HD TV', '전자제품', 2200000, 10, '2023-08-20'),
('레고 해리포터', '완구', 150000, 60, '2023-08-25'),
('비타민워터', '식품', 2000, 250, '2023-09-01'),
('설화수 마스크팩', '화장품', 25000, 150, '2023-09-05'),
('이니스프리 클렌징폼', '화장품', 8000, 300, '2023-09-10'),
('케라시스 샴푸', '생활용품', 12000, 100, '2023-09-15'),
('구글 홈', '전자제품', 130000, 20, '2023-09-20'),
('샤넬 향수', '화장품', 180000, 25, '2023-09-25'),
('헤라 선크림', '화장품', 35000, 120, '2023-10-01'),
('구찌 벨트', '패션', 450000, 15, '2023-10-05'),
('엘지 모니터', '전자제품', 350000, 15, '2023-10-10'),
('나이키 스니커즈', '패션', 110000, 60, '2023-10-15'),
('애플 맥북 에어', '전자제품', 1800000, 10, '2023-10-20'),
('필립스 헤어드라이어', '개인용품', 40000, 40, '2023-10-25'),
('정관장 홍삼', '건강식품', 100000, 50, '2023-11-01'),
('홍삼 캔디', '건강식품', 5000, 200, '2023-11-05'),
('프리메라 크림', '화장품', 60000, 40, '2023-11-10'),
('라미 만년필', '문구', 150000, 30, '2023-11-15'),
('아이폰 케이스', '액세서리', 20000, 200, '2023-11-20'),
('샤오미 전동 킥보드', '교통수단', 250000, 10, '2023-11-25'),
('애플 매직 키보드', '전자제품', 150000, 15, '2023-12-01'),
('캔버스 화장품 세트', '화장품', 30000, 75, '2023-12-05');

-- product 테이블의 모든 데이터를 조회하는 쿼리를 작성하세요.

SELECT *
FROM product p ;

 

-- 카테고리가 전자제품인 제품만 조회하는 쿼리를 작성하세요.

SELECT *
FROM product p
where category="전자제품" ;

 

 

-- 새로운 제품 "소니 헤드폰", 카테고리 "전자제품", 가격 "150,000원", 재고수량 25개 추가하세요.

INSERT INTO product (product_name ,category,price,stock_quantity)
values ("소니헤드폰","전자제품",150000,25);

 

-- 가격이 100,000원 이상 500,000원 이하인 제품을 조회하세요

SELECT *
from product p
WHERE price >=100000 and price <= 500000;

 

-- 제품이름이 코카콜라인 제품을 삭제하는 쿼리를 작성하세요.

DELETE FROM product
WHERE product_name ="코카콜라";

 

-- 이름이 LG 냉장고인 제품의 이름을 LG 양문형 냉장고로 수정하세요.

UPDATE product
SET product_name ="LG 양문형 냉장고"
where product_name ="LG 냉장고";

 

 

-- 이름이 삼성 스마트폰인 제품의 재고 수량을 70개로 업데이트 하세요.

UPDATE product
SET stock_quantity =70
WHERE product_name ="삼성 스마트폰";

 

 

★--  2023년 6월 1일 이후 등록된 제품만 조회하세요.

SELECT *
FROM product p
WHERE created_at > '2023-06-01';

 

★-- 모든 제품의 가격을 5% 인상하는 쿼리를 작성하세요.

UPDATE product
SET price =price *1.05
WHERE price ;

모든 제품이니 조건문을 쓰지않아도 모두 변경됩니다.

쿼리수정>>

UPDATE product
SET price =price *1.05

 

 

-- 카테고리가 '패션'인 제품의 가격을 5% 낮추는 쿼리를 작성하세요.

UPDATE product
SET price =price*0.95
WHERE category ='패션';

 

-- 재고 수량이 100개 이상인 제품을 조회하세요.

SELECT *
FROM product p
WHERE stock_quantity >=100;

 

-- 제품명 "LG 양문형 냉장고"의 등록일을 "2023-02-01"로 변경하세요.

UPDATE product
SET created_at = "2023-02-01"
WHERE product_name ="LG 양문형 냉장고";

 


* 자동완성시 product p 로 입력되는 이유 - 편의성

* 날짜 데이터에는 ' ' " " 입력하기- '2023-06-01'

* 전체변경은 where 조건문 쓰지 않아도 됩니다. 단 모든 데이터를 변경하는 중요한 작업이라 경고알람이 뜹니다.