SQL Order of Operations
SELECT ์ฟผ๋ฆฌ ์คํ ์์์ ๋ํด ์์๋ณด์์.
Reference: SQL BOLT
๋ฌธ๋ฒ ์์
SELECT
column ๋ชFROM
table ๋ชWHERE
์กฐ๊ฑด์GROUP BY
column ๋ชHAVING
์กฐ๊ฑด์ORDER BY
column ๋ช
์คํ ์์
FROM
ON
JOIN
WHERE
GROUP BY
HAVING
SELECT
DISTINCT
ORDER BY
์คํ ์์ ์์ธํ ์์๋ณด๊ธฐ
1. FROM
and JOIN
s
FROM
and JOIN
sJOIN
์ด ๋จผ์ ์คํ๋์ด data set์ด ๋ชจ์์ง๋ค์ด ์์ ์๋ subquery๋ค๋ ํฌํจ๋์ด, JOIN ๋ ๋ชจ๋ row์ column์ด ํฌํจ๋ ์์ table์ ์์ฑํ๋ค
2. WHERE
WHERE
Data set์ ํ์ฑํ๋ฉด,
WHERE
์ ์กฐ๊ฑด์ด ๊ฐ ํ์ ์ ์ฉ๋๋คWHERE
์ ์ ์ ์ฝ ์กฐ๊ฑด์FROM
์ ๋ก ์์ฒญ๋ table์ ์ ์ฉ๋๋ค
3. GROUP BY
GROUP BY
WHERE
์ ์ด ์ ์ฉ๋ ํ ๋จ์์๋ row๋ค์GROUP BY
์ ์ ์ง์ ๋ column์ ๊ณตํต๋ ๊ฐ์ ๊ธฐ์ค์ผ๋ก ๊ทธ๋ฃนํ๋๋คGROUP BY
์ ์ ์ฌ์ฉํ๋ฉด ํด๋น column์ผ๋ก aggregate function (์ง๊ณ ํจ์)๋ฅผ ์ฌ์ฉํ ์ ์๋ค
4. HAVING
HAVING
GROUP BY
์ ์ด query์ ์๋ ๊ฒฝ์ฐ,HAVING
์ ์ ์ ์ฝ ์กฐ๊ฑด์ด groupํ ๋ row์ ์ ์ฉ๋๋คHAVING
์ ์ ์กฐ๊ฑด ๋ณ๊ฒฝ์ ๊ฒฐ๊ณผ data์ ๋ณ๊ฒฝ์ ์๊ณ , ์ถ๋ ฅ๋๋ record ๊ฐ์๋ง ๋ณ๊ฒฝ๋ ์ ์๋ค
5. SELECT
SELECT
SELECT
์ ์ด ๋ง์ง๋ง์ผ๋ก ์คํ๋๋ค
6. DISTINCT
DISTINCT
๋จ์์๋ row ์ค์์, column ๊ฐ์ด ์ค๋ณต๋ row๋ค์ ์ญ์ ๋๋ค
7.ORDER BY
ORDER BY
์ ์ฅ๋ ๊ฐ์ ์ค๋ฆ์ฐจ์ ํน์ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค
Query์
SELECT
์ ์ด ์ด๋ฏธ ์คํ๋์๊ธฐ ๋๋ฌธ์,ORDER_BY
์ ์์๋ alias๋ฅผ ์ฐธ์กฐํ ์ ์๋ค
Last updated