์ฃผ๋ฌธ๋ด์ญ
์ฃผ๋ฌธ ๋ด์ญ์ ์กฐํํ๊ธฐ ์ํด์๋ order(์ฃผ๋ฌธ), product(์ํ), product_io(์ํ ์
์ถ๊ณ ) ํ
์ด๋ธ์ ์ ๋ณด๋ฅผ ์กฐํฉํ์ฌ, ํน์ ํ์์ ์กฐ๊ฑด์ผ๋ก ๋ชฉ๋ก์ ์กฐํํด์ผํฉ๋๋ค.
/*
์ฃผ๋ฌธ๋ด์ญ ์กฐํ
- ํ์์ ์ฃผ๋ฌธ๋ด์ญ์ ์กฐํํ๋ค.
- ์ฃผ๋ฌธ๋ด์ญ์์ ์กฐํํ ๋ฐ์ดํฐ๋ ๋ค์๊ณผ ๊ฐ๋ค.
(์ฃผ๋ฌธ๋ฒํธ)(์ํ๋ช
)(๊ฐ๊ฒฉ)(์๋)(์๊ณ)(๋น๊ณ )
- ์ด๋ค ํ์์ธ์ง user_id ๋ก ์์์ผํ๋ค.
โก WHERE user_id = 'joeun';
- ํด๋น user_id ๋ก, ์ํ์
์ถ๊ณ ํ
์ด๋ธ(prodcut_io)์์
์ถ๊ณ (OUT)๋ ์ํID์ ์๋์ ์ ์ ์๋ค.
- ์ถ๊ณ ๋ ์ํID ๋ฅผ ์๋ฉด ์ํ(product) ํ
์ด๋ธ๋ก๋ถํฐ ์ํ๋ช
์ ์กฐํํ ์ ์๋ค.
- ์ํ์
์ถ๊ณ ํ
์ด๋ธ(prodcut_io)์ order_no ๋ฅผ ์ฐธ์กฐํ๋ฉด,
์ด๋ค ์ฃผ๋ฌธ(order)์ธ์ง ์ ์ ์๋ค.
- order, product, product_io ํ
์ด๋ธ์ ์กฐ์ธํ์ฌ ์กฐํํ๋ฉด,
์ฃผ๋ฌธ๋ด์ญ์ ์กฐํํ ์ ์๋ค.
- product_io ํ
์ด๋ธ์ order_no ๋ก order ํ
์ด๋ธ์ ์ฐธ์กฐํ ์ ์๋ค.
- product_io ํ
์ด๋ธ์ product_id ๋ก product ํ
์ด๋ธ์ ์ฐธ์กฐํ ์ ์๋ค.
*/
-- ์ฃผ๋ฌธ ์กฐํ
SELECT * FROM `order`;
-- ์ํ ์กฐํ
SELECT * FROM product;
-- ์ํ์
์ถ๊ณ ์กฐํ
SELECT * FROM product_io;
SQL
๋ณต์ฌ
SELECT o.order_no
,p.name
,p.unit_price
,io.amount
FROM `order` o JOIN product_io io ON o.order_no = io.order_no
JOIN product p ON io.product_id = p.product_id
WHERE o.user_id = 'joeun';
SQL
๋ณต์ฌ