๐Ÿฌ MySQL/๋ฌธ์ œํ’€์ด

[MySQL] SQL ์ฝ”๋”ฉํ…Œ์ŠคํŠธ Day14

xod22 2022. 2. 27. 19:06
728x90

LEVEL4์˜ ๋งˆ์ง€๋ง‰ ๋ฌธ์ œ์ด์ž MySQL ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋งˆ์ง€๋ง‰ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค..!

https://programmers.co.kr/learn/courses/30/lessons/62284

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์šฐ์œ ์™€ ์š”๊ฑฐํŠธ๊ฐ€ ๋‹ด๊ธด ์žฅ๋ฐ”๊ตฌ๋‹ˆ

CART_PRODUCTS ํ…Œ์ด๋ธ”์€ ์žฅ๋ฐ”๊ตฌ๋‹ˆ์— ๋‹ด๊ธด ์ƒํ’ˆ ์ •๋ณด๋ฅผ ๋‹ด์€ ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค. CART_PRODUCTS ํ…Œ์ด๋ธ”์˜ ๊ตฌ์กฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์œผ๋ฉฐ, ID, CART_ID, NAME, PRICE๋Š” ๊ฐ๊ฐ ํ…Œ์ด๋ธ”์˜ ์•„์ด๋””, ์žฅ๋ฐ”๊ตฌ๋‹ˆ์˜ ์•„์ด๋””, ์ƒํ’ˆ ์ข…๋ฅ˜, ๊ฐ€

programmers.co.kr

๋ฌธ์ œ(์šฐ์œ ์™€ ์š”๊ฑฐํŠธ๊ฐ€ ๋‹ด๊ธด ์žฅ๋ฐ”๊ตฌ๋‹ˆ) : ์„œ๋ธŒ์ฟผ๋ฆฌ

 

CART_PRODUCTS ํ…Œ์ด๋ธ”์€ ์žฅ๋ฐ”๊ตฌ๋‹ˆ์— ๋‹ด๊ธด ์ƒํ’ˆ ์ •๋ณด๋ฅผ ๋‹ด์€ ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค. CART_PRODUCTS ํ…Œ์ด๋ธ”์˜ ๊ตฌ์กฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์œผ๋ฉฐ, ID, CART_ID, NAME, PRICE๋Š” ๊ฐ๊ฐ ํ…Œ์ด๋ธ”์˜ ์•„์ด๋””, ์žฅ๋ฐ”๊ตฌ๋‹ˆ์˜ ์•„์ด๋””, ์ƒํ’ˆ ์ข…๋ฅ˜, ๊ฐ€๊ฒฉ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

 

NAME TYPE
ID INT
CART_ID INT
NAME VARCHAR
PRICE INT

๋ฌธ์ œ

 

๋ฐ์ดํ„ฐ ๋ถ„์„ ํŒ€์—์„œ๋Š” ์šฐ์œ (Milk)์™€ ์š”๊ฑฐํŠธ(Yogurt)๋ฅผ ๋™์‹œ์— ๊ตฌ์ž…ํ•œ ์žฅ๋ฐ”๊ตฌ๋‹ˆ๊ฐ€ ์žˆ๋Š”์ง€ ์•Œ์•„๋ณด๋ ค ํ•ฉ๋‹ˆ๋‹ค. ์šฐ์œ ์™€ ์š”๊ฑฐํŠธ๋ฅผ ๋™์‹œ์— ๊ตฌ์ž…ํ•œ ์žฅ๋ฐ”๊ตฌ๋‹ˆ์˜ ์•„์ด๋””๋ฅผ ์กฐํšŒํ•˜๋Š” SQL ๋ฌธ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”. ์ด๋•Œ ๊ฒฐ๊ณผ๋Š” ์žฅ๋ฐ”๊ตฌ๋‹ˆ์˜ ์•„์ด๋”” ์ˆœ์œผ๋กœ ๋‚˜์™€์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 


ํ’€์ด
SELECT CART_ID
FROM CART_PRODUCTS
WHERE NAME="Yogurt" AND CART_ID IN (SELECT CART_ID FROM CART_PRODUCTS WHERE NAME="Milk")
ORDER BY CART_ID;

 

1. WHERE์ ˆ์— ์„œ๋ธŒ์ฟผ๋ฆฌ๋ฅผ ์ถ”๊ฐ€ํ•ด NAME์ด Yogurt์ด๊ณ  CART_ID๊ฐ€ ์„œ๋ธŒ ์ฟผ๋ฆฌ ์•ˆ( NAME์ด Milk์ธ CART_ID)์˜ CART_ID์— ์กด์žฌํ•œ๋‹ค๋ฉด ์กฐํšŒํ•œ๋‹ค.

2. CART_ID๋กœ ์ •๋ ฌ

728x90