ํจ์
1) ORDER BY (์ ๋ ฌ)
2) WHERE (์กฐ๊ฑด์ )
2-1) BETWEEN
2-2) IN
2-3) LIKE
2-4) NULL
3) ํจ์
4) GROUP BY, HAVING ์
1) ORDER BY (์ ๋ ฌ)
SELECT
์ปฌ๋ผ๋ช
FROM ํ
์ด๋ธ๋ช
ORDER BY ์ปฌ๋ผ๋ช
[ASC / DESC];
ASC | ์ค๋ฆ์ฐจ์ ์ ๋ ฌ (์๋ต ์ ๊ธฐ๋ณธ๊ฐ) |
DESC | ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ |
- SELECT๋ฌธ์ ๋ฐ๋์ ๊ฐ์ฅ ๋ง์ง๋ง์ ์์น, ์ฌ๋ฌ ๊ฐ ์ง์ ์ ์์๋๋ก ์ ์ฉ
- NULL์ ๋น๊ต ๋ถ๊ฐ
2) WHERE ์กฐ๊ฑด๋ฌธ: ํน์ ์กฐ๊ฑด์ ํด๋นํ๋ ํ์ ์กฐํ
WHERE ์กฐ๊ฑด๋ฌธ์ด ์์ผ๋ฉด ๋ชจ๋ ๋ฐ์ดํฐ ์กฐํ
SELECT
์ปฌ๋ผ๋ช
1,
์ปฌ๋ผ๋ช
2
FROM ํ
์ด๋ธ๋ช
WHERE ์กฐ๊ฑด;
A = B | A์ B๊ฐ ๊ฐ๋ค. |
A > B | A๊ฐ B๋ณด๋ค ํฌ๋ค. |
A < B | A๊ฐ B๋ณด๋ค ์๋ค. |
A >= B | A๊ฐ B๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๋ค. |
A <= B | A๊ฐ B๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. |
A != B | A์ B๊ฐ ๋ค๋ฅด๋ค. |
tip!
> ์กฐํํ ๋ ์์: FROM -> WHERE -> SELECT
> SELECT๋ฅผ ์ฐ๊ณ FROM์ ์ด ํ, SELECT ๋ค์์ ctrl+space bar๋ฅผ ๋๋ฅด๋ฉด ์๋ ์์ฑ์ ์ํ ์ปฌ๋ผ์ด ๋์ด
check point! WHERE ์กฐ๊ฑด์์
AND ๋ ๋ ๊ฐ์ง ์กฐ๊ฑด์ ๋ค ๋ง์กฑ (์์ชฝ ๋ค TRUE)
OR๋ ๋ ์ค ํ ๊ฐ์ง ์กฐ๊ฑด์ ๋ง์กฑ (๋ ์ค ํ๋๋ง TRUE๋ฉด ๋จ)
2-1) AND์ BETWEEN ๋น๊ต
check point! 500์์ 1000 ์ฌ์ด ๊ฐ์ ๊ตฌํ ๋, BETWEEN์ ๊ฐ๊ฑฐ๋ ์กฐ๊ฑด๋ ํฌํจ๋จ
๊ทธ๋ฆฌ๊ณ , 500<=salary<=1000์ ์คํ ์๋จ
2-2) OR์ฐ์ฐ๊ณผ IN์ฐ์ฐ ๋น๊ต
check point! ๊ฐ์ด 20์ด๊ฑฐ๋ 40์ธ ๊ฐ → ์ฆ, ๊ฐ์ ๊ฐ์ด ์ถ์ถ๋จ
NOT IN
check point! ๊ฐ์ด 20์ด ์๋๊ณ 40์ด ์๋ ๊ฐ → ์ฆ, ๊ฐ์ ๊ฐ์ด ์ถ์ถ๋จ
2-3) LIKE ์ฐ์ฐ์
- ํน์ ๋จ์ด๋ฅผ ํฌํจํ๋ ๊ฒฝ์ฐ ์กฐ๊ฑด
% | 0๊ฐ ์ด์์ ๋ฌธ์ |
_ | 1๊ฐ์ ๋ฌธ์ |
check point! '๊น'์จ ํ์ ์กฐํ / '์ธ'์ผ๋ก ๋๋๋ ํ์ ์กฐํ
%์ _ ์ ์ฐจ์ด
_๋ ๋ช ํํ ๊ฐ์๋ฅผ ํํ
check point! %์ _ ์ ์ฐจ์ด / %๋ 0๊ฐ ์ด์์ ๋ฌธ์, _๋ ๋ช ํํ ๊ฐ์๋ฅผ ํํ
check point! %์ _๋ฅผ ์, ๋ค ๋ฐฐ์น ๊ฐ๋ฅํ๋ฉฐ ์์ด ์ฐ๋ ๊ฒ๋ ๊ฐ๋ฅ
2-4) NULL
- NULL์ ํน์ง
- NULL์ ๋ชจ๋ฅด๋ ๊ฐ์ ์๋ฏธ
- NULL์ ๊ฐ์ ๋ถ์ฌ
- NULL๊ณผ ์ซ์ ํน์ ๋ ์ง๋ฅผ ๋ํ๋ฉด NULL์ด ๋๋ค.
- NULL๊ณผ ์ด๋ค ๊ฐ์ ๋น๊ตํ ๋, '์ ์ ์์'์ด ๋ฐํ
- NULL๊ฐ ์กฐํ
- NULL๊ฐ์ ์กฐํํ ๊ฒฝ์ฐ IS NULL์ ์ฌ์ฉํ๊ณ , NULL๊ฐ์ด ์๋ ๊ฒ์ ์กฐํํ ๊ฒฝ์ฐ IS NOT NULL์ ์ฌ์ฉ
NULL ํจ์ | ์ค๋ช |
NVL ํจ์ | - NULL์ด๋ฉด ๋ค๋ฅธ ๊ฐ์ผ๋ก ๋ฐ๊พธ๋ ํจ์ - NVL(MGR, 0)์ MGR ์นผ๋ผ์ด NULL์ด๋ฉด 0์ผ๋ก ๋ฐ๊พผ๋ค. |
NVL2 ํจ์ | - NVLํจ์์ DECODEํจ์๋ฅผ ํ๋๋ก ๋ง๋ ๊ฒ์ด๋ค. - NVL2(MGR, 1, 0)์ MGR์นผ๋ผ์ด NULL์ด ์๋๋ฉด 1์, NULL์ด๋ฉด 0์ ๋ฐํํ๋ค. |
NULLIF ํจ์ | - ๋ ๊ฐ์ ๊ฐ์ด ๊ฐ์ผ๋ฉด NULL์, ๊ฐ์ง ์์ผ๋ฉด ์ฒซ ๋ฒ์งธ ๊ฐ์ ๋ฐํํ๋ค. - NULLIF(exp1, exp2)์ exp1๊ณผ exp2๊ฐ ๊ฐ์ผ๋ฉด NULL์, ๊ฐ์ง ์์ผ๋ฉด exp1์ ๋ฐํ |
COALESCE | - NULL์ด ์๋ ์ต์กฐ์ ์ธ์ ๊ฐ์ ๋ฐํ - COALESCE(exp1, exp2, exp3, ...) exp1์ด NULL์ด ์๋๋ฉด exp1์ ๊ฐ์, ๊ทธ๋ ์ง ์์ผ๋ฉด ๊ทธ ๋ค์ ๊ฐ์ NULL ์ฌ๋ถ๋ฅผ ํ๋จํ์ฌ ๊ฐ์ ๋ฐํ |
'Deep knowledge > โ ๋ง์ผํฐ์ ๋ฐ์ดํฐ ๋ถ์' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
SQL๊ฐ๋ฐ์-2: DML(์กฐํ) - SELECT, SELECT DISTINCT (0) | 2021.12.22 |
---|---|
SQL๊ฐ๋ฐ์-1: SQL์ ๊ธฐ๋ณธ๊ณผ DML, TCL (0) | 2021.12.21 |