๐คนโโ๏ธ ์ฃผ๋ฌธ ์ ํ [SQL]
๐ ์ ๊ทธ๋ฐ์ง ์ด์ ๋ฅผ ์๊ฒ ๋์ค๊ฑฐ์์
๐ ์ฃผ๋ฌธ ์ ํ
์ด SQL์ ๋ณด๋ฉด ์ฃผ๋ฌธ์ ๋ํด ์ด๋ป๊ฒ ์๊ฐํ์ญ๋๊น?
SELECT * FROM clients
WHERE age >= 30
GROUP BY usa
HAVING salary > 1000
ORDER BY id desc
LIMIT 100
SQL์ด SELECT์์ ์คํ๋๋ ๊ฒ์ฒ๋ผ ๋ณด์ ๋๊น?
์ฌ์ค์ ์ฌ์ค์ด ์๋๋ค
-- SQL executes in this order
FROM
|
WHERE
|
GROUP BY
|
HAVING
|
SELECT
|
ORDER BY
|
LIMIT
๐ ์ง๋ฌธ 1
SUM() ํจ์๋ฅผ WHERE์์ ์ฌ์ฉํ ์ ์๋ ์ด์ ๋ ๋ฌด์์ ๋๊น?
FROM
|
WHERE ๐ ๐
|
GROUP BY ๐ ๐
|
HAVING
|
SELECT
|
ORDER BY
|
LIMIT
WHERE๊ฐ ์คํ๋๊ธฐ ์ ์ GROUP BY๊ฐ ์์ง ์คํ๋์ง ์์์ผ๋ฏ๋ก WHERE์์ COUNT() SUM()์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ฆ, ์ด๋ฌํ ๊ธฐ๋ฅ์ HAVING์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๐ ์ง๋ฌธ 2
WHERE ๋๋ GROUP BY์์ AS๋ฅผ ์ฌ์ฉํ ์ ์๋ ์ด์ ๋ ๋ฌด์์ ๋๊น? ORDER BY์์ ์ฌ์ฉํ ์ ์์ง๋ง ๋ถ๊ณตํํฉ๋๋ค!!
FROM
|
WHERE ๐ ๐
|
GROUP BY ๐ ๐
|
HAVING
|
SELECT ๐ ๐
|
ORDER BY ๐ ๐
|
LIMIT
์ง์ ํด. ORDER BY๋ SELECT ์ดํ์ ์คํ๋๊ธฐ ๋๋ฌธ์ ๋๋ค.
์ ์ํ๊ธฐ ์ ์๋ "AS"๋ก ์์ฑ๋ ์ด๋ฆ์ ์ฝ์ ์ ์์ต๋๋ค.
์ฝ์ด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค๐ค
Reference
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(๐คนโโ๏ธ ์ฃผ๋ฌธ ์ ํ [SQL]), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://dev.to/kaziusan/sql-select-order-3mi6ํ ์คํธ๋ฅผ ์์ ๋กญ๊ฒ ๊ณต์ ํ๊ฑฐ๋ ๋ณต์ฌํ ์ ์์ต๋๋ค.ํ์ง๋ง ์ด ๋ฌธ์์ URL์ ์ฐธ์กฐ URL๋ก ๋จ๊ฒจ ๋์ญ์์ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค