DataBase/MySQL

[MySQL] MySQL ๊ณต๋ถ€ํ•˜๊ธฐ(1) - SQL ์ž‘๋™์ˆœ์„œ

Seok_IN 2021. 10. 27. 22:39

๐Ÿ”ท MySQL ์ž‘๋™ ์ˆœ์„œ

 

1๏ธโƒฃ FROM : SQL ์ฟผ๋ฆฌ๋ฌธ์˜ ๋Œ€์ƒ์ด ๋˜๋Š” ํ…Œ์ด๋ธ”์„ ๊ฐ€๋ฆฌํ‚จ๋‹ค.

SELECT *
FROM <TABLE>

 

2๏ธโƒฃ ON : JOIN์‹œ์— ์กฐ๊ฑด์„ ์„ ํƒํ•˜์—ฌ JOIN ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.

3๏ธโƒฃ JOIN : ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰์„ ์œ„ํ•ด ์„œ๋กœ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์„ ์—ฐ๊ฒฐ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.

SELECT *
FROM A JOIN B ON A.no = B.no

4๏ธโƒฃ WHERE : SQL ์ฟผ๋ฆฌ๋ฌธ์—์„œ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰์„ ์œ„ํ•œ ์กฐ๊ฑด์„ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค.

SELECT *
FROM <TABLE>
WHERE TABLE.no = 1

5๏ธโƒฃ GROUP BY : ๊ทธ๋ฃนํ™” ํ•  ์ปฌ๋Ÿผ์„ ์ง€์ •ํ•˜์—ฌ ํŠน์ • ์†์„ฑ์„ ๊ธฐ์ค€์œผ๋กœ ๊ทธ๋ฃนํ™”ํ•˜์—ฌ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

SELECT brandName, AVG(price)
FROM Store
GROUPBY brandName;

6๏ธโƒฃ CUBE | ROLLUP 

 

์œ„์™€ ๊ฐ™์€ ํ…Œ์ด๋ธ”์ด ์žˆ์„ ๋•Œ GROUP BY๋ฅผ ํ†ตํ•ด menu๋ณ„ ํŒ๋งค๊ธˆ์•ก์˜ ํ‰๊ท ์„ ๊ตฌํ•ด๋ณด๋ฉด

 

SELECT menu, AVG(price)
FROM STORE
GROUP BY menu;

 

  - ROLLUP : ROLLUP ํ•จ์ˆ˜๋Š” GROUP BY์™€ ๊ฐ™์ด ์“ฐ์ด๋Š”๋ฐ ROLLUP(์ฒซ๋ฒˆ์งธ ์ธ์ž, ๋‘๋ฒˆ์งธ ์ธ์ž) ๋ฅผ ์“ฐ๊ฒŒ๋˜๋ฉด GROUP BY ์˜ ๊ฒฐ๊ณผ(์ฒซ๋ฒˆ์งธ ์ธ์ž๋ณ„ ๋‘๋ฒˆ์งธ ์ธ์ž)์™€ ๊ทธ์— ๋Œ€ํ•œ ์†Œ๊ณ„, ๊ทธ๋ฆฌ๊ณ  ์ด๊ณ„ ๊นŒ์ง€ ๋‚˜์˜ค๊ฒŒ ๋œ๋‹ค.

 

๐Ÿ’ก MYSQL ์—์„œ๋Š” WITH ROLLUP ๊ตฌ๋ฌธ์„ ์“ด๋‹ค.

 

SELECT brandName, menu, SUM(price)
FROM STORE
GROUP BY brandName, menu WITH ROLLUP;

์œ„ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ฉด brandName ๋ณ„ menu์˜ ๊ฐ€๊ฒฉ๋“ค์ด ๋‚˜์˜ค๊ณ , ๊ทธ ๋ฐ‘์—๋Š” ๋ธŒ๋žœ๋“œ๋ณ„ ๋ฉ”๋‰ด์˜ ๊ฐ€๊ฒฉ๋“ค์˜ ํ•ฉ๊ณ„, ์ตœ์ข… ๋ฐ‘์—๋Š” ์ด ํ•ฉ๊ณ„๊ฐ€ ๋‚˜์˜ค๊ฒŒ ๋œ๋‹ค.

 

  - CUBE : CUBE ํ•จ์ˆ˜๋Š” ๋‹ค์–‘ํ•œ ์ง‘๊ณ„์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ๋“ค์„ ์ถœ๋ ฅํ•ด์ฃผ๋Š”๋ฐ MYSQL์—์„œ๋Š” 8.0 ๋ฒ„์ „ ์ดํ›„๋ถ€ํ„ฐ๋Š” ์ง€์›ํ•˜์ง€ ์•Š๊ฒŒ ๋˜์—ˆ๋‹ค.

 

7๏ธโƒฃ HAVING : HAVING์ ˆ์€ GROUP BY ์™€ ๊ฐ™์ด ์“ฐ์ด๋Š”๋ฐ GROUP BY ์‹œ์— ์กฐ๊ฑด์„ ๋ถ™์ด๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

 

SELECT menu, Avg(price)
FROM Store
GROUP BY menu
HAVING Avg(price) > 18000;

8๏ธโƒฃ SELECT : ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ Column์„ ์„ ํƒํ•œ๋‹ค.

 

9๏ธโƒฃ DISTINCT : ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ์™ธ์‹œํ‚จ๋‹ค.

 

๐Ÿ”Ÿ ORDER BY : ASC/DESC๋ฅผ ํ†ตํ•ด ์˜ค๋ฆ„์ฐจ์ˆœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.