โ๏ธ Programmers MySQL ์ ๋ต๋ฅ 66~68% ์ ์ฒด ํ์ด
1๏ธโฃ 5์ ์ํ๋ค์ ์ด๋งค์ถ ์กฐํํ๊ธฐ (https://school.programmers.co.kr/learn/courses/30/lessons/131117)
SELECT FO.PRODUCT_ID, FP.PRODUCT_NAME, (FP.PRICE * SUM(FO.AMOUNT)) AS TOTAL_SALES
FROM FOOD_PRODUCT AS FP
JOIN (
SELECT *
FROM FOOD_ORDER
WHERE MONTH(PRODUCE_DATE) = 5
) AS FO
ON FP.PRODUCT_ID = FO.PRODUCT_ID
GROUP BY FP.PRODUCT_NAME
ORDER BY TOTAL_SALES DESC, FO.PRODUCT_ID;
โฌ๏ธ
# join ํ๋ sub ํ
์ด๋ธ ๊ฐ์ํ
SELECT FP.PRODUCT_ID, PRODUCT_NAME, (PRICE * TOTAL) AS TOTAL_SALES
FROM FOOD_PRODUCT AS FP
JOIN (
SELECT PRODUCT_ID, SUM(AMOUNT) AS TOTAL
FROM FOOD_ORDER
WHERE MONTH(PRODUCE_DATE) = 5
GROUP BY PRODUCT_ID
) AS FO
ON FP.PRODUCT_ID = FO.PRODUCT_ID
GROUP BY PRODUCT_NAME
ORDER BY TOTAL_SALES DESC, FP.PRODUCT_ID;
2๏ธโฃ ์ํ๋ถ๋ฅ๋ณ ๊ฐ์ฅ ๋น์ผ ์ํ์ ์ ๋ณด ์กฐํํ๊ธฐ (https://school.programmers.co.kr/learn/courses/30/lessons/131116)
SELECT FP.CATEGORY, MX AS MAX_PRICE, PRODUCT_NAME
FROM FOOD_PRODUCT AS FP
JOIN (
SELECT CATEGORY, MAX(PRICE) AS MX
FROM FOOD_PRODUCT
WHERE CATEGORY IN ('๊ณผ์', '๊ตญ', '๊น์น', '์์ฉ์ ')
GROUP BY CATEGORY
) AS FS
ON FP.CATEGORY = FS.CATEGORY AND FP.PRICE = FS.MX
ORDER BY MAX_PRICE DESC;
์ ์ฌํ ๋ฌธ์ : https://school.programmers.co.kr/learn/courses/30/lessons/131123
'SQL ๐ฌ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| (Programmers) SQL ํ์ด (11) (0) | 2022.11.01 |
|---|---|
| (Programmers) SQL ํ์ด (10) (0) | 2022.10.31 |
| (Programmers) SQL ํ์ด (8) (0) | 2022.10.26 |
| (Programmers) SQL ํ์ด (7) (1) | 2022.10.25 |
| (Programmers) SQL ํ์ด (6) (0) | 2022.10.24 |