# ๊ทธ๋ฆผ


# ๊ทธ๋ฆผ ์์ฝ
1) from / join / where
2) group by / having
3) select
4) order / limit
FROM ์ (+ Join)
์ฟผ๋ฆฌ์ ์ฒซ๋ฒ์งธ ์คํ ์์๋ FROM์ ์ด๋ค. FROM ์ ์์๋ ์กฐํํ ํ ์ด๋ธ์ ์ง์ ํฉ๋๋ค.
์ดํ Join์ ์คํํ์ฌ ํ๋์ ๊ฐ์ ํ ์ด๋ธ๋ก ๊ฒฐํฉํฉ๋๋ค.
WHERE ์
WHERE ์ ์์๋ ํ ์ด๋ธ์์ ์กฐ๊ฑด์ ๋ง๋ ๋ฐ์ดํฐ๋ฅผ ํํฐ๋งํ๋ค.
GROUP BY
GROUP BY ์ ์์๋ ์ ํํ ์นผ๋ผ์ ๊ธฐ์ค์ผ๋ก ์กฐํํ ๋ ์ฝ๋ ๋ชฉ๋ก์ ๊ทธ๋ฃนํํ๋ค.
HAVING ์
HAVING ์ ์ ๊ทธ๋ฃนํ ํ์ ๊ฐ ๊ทธ๋ฃน์ ์ฌ์ฉ๋๋ ์กฐ๊ฑด ์ ์ด๋ค. ์ฝ๊ฒ ๋งํด ๊ทธ๋ฃน์ ํํฐ๋งํ๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค.
HAVING ์ ์ ์กฐ๊ฑด์ WHERE ์ ์๋ ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ๋ผ๋ฉด WHERE์ ์ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ฐ๋์งํ๋ค.HAVING ์ ์ ๊ฐ ๊ทธ๋ฃน์ ์กฐ๊ฑด์ ๊ฑธ๊ธฐ ๋๋ฌธ์ ํผํฌ๋จผ์ค๊ฐ ๋จ์ด์ง๊ฒ ๋๋ค.
์๋ฅผ ๋ค์ด MONEY > 10000์ ๋ชจ๋ ๋ ์ฝ๋์ MONEY๊ฐ 10000์ด ๋์ด์ผ ํ๋ค๋ ์กฐ๊ฑด์ด๋ค. ์ด๋ ๊ฐ ๊ทธ๋ฃน์ ๋ฐ๋ก ๊ฑฐ๋ ๊ฒ๋ณด๋ค๋ WHERE์ ๋ก ํ๋ฒ์ ๊ฑฐ๋ ๊ฒ์ด ์ข๋ค. (ํ์ฌ๋ ๋ด๋ถ์ ์ผ๋ก Optimize ํด์ค๋ค.)
SELECT ์
SELECT ์ ์ ์ฌ๋ฌ ์กฐ๊ฑด๋ค์ ์ฒ๋ฆฌํ ํ ๋จ์ ๋ฐ์ดํฐ์์ ์ด๋ค ์ด์ ์ถ๋ ฅํด์ค์ง ์ ํํ๋ค.
ORDER BY ์
์ด๋ค ์ด๊น์ง ์ถ๋ ฅํ ์ง ์ ํ๋ค๋ฉด ํ์ ์์๋ฅผ ์ด๋ป๊ฒ ๋ณด์ฌ์ค์ง ์ ๋ ฌ ํด์ฃผ๋ ์ ์ด ORDER BY์ด๋ค.
LIMIT ์
LIMIT ์ ์ ๊ฒฐ๊ณผ ์ค ๋ช๊ฐ์ ํ์ ๋ณด์ฌ์ค ์ง ์ ํํ๋ค.
์ฟผ๋ฆฌ์ ์คํ ์์๋ฅผ ์๋ ๊ฒ์ ์ค์ํ๋ค. ์คํ์์๋ฅผ ๋ชจ๋ฅด๋ฉด ์ฟผ๋ฆฌ๋ฅผ ์ ๋๋ก ์์ฑํ๊ธฐ ์ด๋ ต๋ค. ์๋ฅผ ๋ค์ด ๋ณด์.
1. ๋ฌธ๋ฒ
OrderBy ์ ์์ Alias ์ฌ์ฉ
SELECT CONCAT(first_name, last_name) AS full_name
FROM user
ORDER BY full_name;
ORDER BY ์ ์ SELECT ์ ๋ณด๋ค ๋ค์ ์คํ๋๊ธฐ ๋๋ฌธ์ SELECT ์ ์ ๊ฒฐ๊ณผ๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
Where ์ ์์ Alias ์ฌ์ฉ
SELECT CONCAT(first_name, last_name) AS full_name
FROM user
WHERE full_name = 'VioletBeach';
Where ์ ์์๋ SELECT ์ ๋ณด๋ค ๋จผ์ ์คํ๋๋ค. ์ฆ, WHERE ์ ์ FROM ์ ์ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ง๊ณ ํํฐ๋ง์ ํ๋ ์ฉ๋์ด์ง SELECT๋ฌธ ์์ ์ฌ์ฉํ AS๋ฅผ ํ์ฉํ ์ ์๋ค. ๊ทธ๋์ ํด๋น ์ฟผ๋ฆฌ๋ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค.
WHERE ์ ์์ Alias๋ฅผ ์ฌ์ฉํ๋ ค๋ค๊ฐ ์์น ์๋ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ๋๋ค๊ฑฐ๋, ORDER BY ์ ์์ SELECT ์ ์์ ์ฌ์ฉ๋ ํจ์๋ฅผ ๋ ํธ์ถํด์ ์์์ด ๋ญ๋น๋๋ ์ด์๋ฅผ ๋ง์ผ๋ ค๋ฉด ์คํ ์์์ ๋ํ ์ดํด๊ฐ ํ์ํ๋ค.
ํ์ต ํ
LINE DBA ๋ถ์ด ์๊ฐํด์ค ๋ฐฉ๋ฒ์ผ๋ก SQL์ ์คํ ์์๋๋ก ์์ฑํ๋ ๋ฐฉ๋ฒ์ ์ถ์ฒํ๋ค.
SELECT -> FROM -> WHERE ์์ผ๋ก ์์ฑํ๋ ๊ฒ์ด ์๋๋ผ FROM -> WHERE -> SELECT ์์ผ๋ก ์์ฑํ๋ ๊ฒ์ด๋ค.
๊ทธ๋ฌ๋ฉด ์ค๊ฐ์ ์ฑ๋ฅ์ ์ผ๋ก ํ๋ํ ์ ์๋ ์์๋ฅผ ๋ฐ๊ฒฌํ ๊ฐ๋ฅ์ฑ์ด ๋์์ง๋ค๊ณ ํ๋ค.
Reference
https://jaehoney.tistory.com/191
'Knowledge๐ฆข > SQL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [SQL] ํ ์ด๋ธ ์๋ฃํ ์ข ๋ฅ (0) | 2024.04.19 |
|---|---|
| [SQL] union๊ณผ union all์ ์ฐจ์ด์ (0) | 2024.04.16 |
| [SQL] ์ง๊ณํจ์์ ๋ํด์ - count(*), count(์ปฌ๋ผ), ์ง๊ณํจ์(์ปฌ๋ผ) (1) | 2024.04.12 |
| [SQL] ๋ฐ์ดํฐ ๊ฐ๊ณต๊ณผ ์กฐ๊ฑด๋ฌธ (0) | 2024.04.05 |
| [SQL] ์ฐ์ฐ์์ ์ข ๋ฅ (0) | 2024.04.04 |