์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ์ฑ
- ๋ผํ๋ผ์ค์๋ง๋
- ์นํผ๋ธ๋ฆฌ์ฑ
- ๊น๋ฏธ๊ฒฝ์๋งํ์์
- css
- Python
- ์ค๋ผํด
- ์ปดํจํฐ๊ณผํ
- ํ๋ก๊ทธ๋๋ฐ
- html
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ์นํ์ด์ง๋ง๋ค๊ธฐ
- ๋ ์
- ๋ฐ์ํ
- ์๋ฐ
- K๋ฐฐํฐ๋ฆฌ
- K๋ฐฐํฐ๋ฆฌ๋ ๋ณผ๋ฃจ์
- ํฐ์คํ ๋ฆฌ์ฑ๋ฆฐ์ง
- ์ฝ๋ฉ
- ํ์ด์ฌ
- ComputerScience
- ์ํ
- ๋ฆฌ์กํธ
- Java
- ๋ง์ผ๋ด๊ฐ์ธ์์๋ค์์ฐ๋ค๋ฉด
- database
- ๊ฐ๋ฐ
- JavaScript
- ์๋ฐ์คํฌ๋ฆฝํธ
- ์ค๋ธ์
- Today
- Total
JiYoung Dev ๐ฅ
[Oracle Database] SELECT - ๋ฐ์ดํฐ ์กฐํ, DISTINCT, AS / WHERE / AND, OR ์ฐ์ฐ์ ๋ณธ๋ฌธ
[Oracle Database] SELECT - ๋ฐ์ดํฐ ์กฐํ, DISTINCT, AS / WHERE / AND, OR ์ฐ์ฐ์
Shinjio 2023. 3. 19. 14:072023.03.16 ~ ํ์ต ๋ด์ฉ
์ฐธ๊ณ ์๋ฃ : ์ค๋ผํด๋ก ๋ฐฐ์ฐ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๋ฌธ
๐ ์ค๋ฌด์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ SQL, ์กฐํ(SELECT)
SQL ์์ฑ ๊ท์น
1. ํ ์ค ์ฃผ์ : ' -- '
2. ์ฌ๋ฌ ์ค ์ฃผ์ : ' /* */ '
3. ํญ์ ๋ฌธ๋ฒ์ด ๋๋๋ฉด ' ; ' ์์ฑ
4. ๋ฌธ์์ด ์์ฑ ์์๋ ์์ ๋ฐ์ดํ( ' ' ) ์ฌ์ฉ
5. SQL๋ฌธ์ ์คํ ์์๊ฐ ์ค์ํจ
๐ SQL ์คํ ์์
์ฝ๋ ์์ฑ์ SELECT์ FROM์ ํ์๋ก ์์ฑํ๋ฉฐ ๋๋จธ์ง๋ ํ์์ ๋ฐ๋ผ ์์ฑ
๐ SELECT๋ฌธ์ ๊ธฐ๋ณธ ํ์
โ DESC
DESC๋ก ํ ์ด๋ธ์ ๊ตฌ์ฑ ํ์ธ
โป ์๋ฌธ์ ํ ๊ธ์๋น 1byte, ํ๊ธ์ ํ ๊ธ์๋น 2byte๋ฅผ ์ฐจ์ง
โป SQL๋ฌธ์ ์์ฑํ ๋ ํ ์ด๋ธ ์ด๋ฆ๊ณผ ์ด ์ด๋ฆ์ ๋๋ฌธ์๋ก ์ฐ๊ธฐ๋ฅผ ๊ถ์ฅ. SQL๋ฌธ์ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์์์ผ๋ก ๋์๋ฌธ์๊ฐ ์์ฌ ์๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ SQL๋ฌธ์ ๊ตฌ๋ถํ๊ณ ๊ฐ๋ ์ฑ์ ๋์ด๊ธฐ ์ํด ์ค๋ฌด์์๋ SQL๋ฌธ ์ ์ฒด๋ฅผ ๋๋ฌธ์๋ก ์ฌ์ฉ
โ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๋ 3๊ฐ์ง ๋ฐฉ๋ฒ - ์ ๋ ์ , ํ๋ก์ ์ , ์กฐ์ธ
์ ๋ ์ (selection)
ํ ๋จ์๋ก ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๋ ๋ฐฉ์์ผ๋ก ํ ์ด๋ธ ์ ์ฒด ๋ฐ์ดํฐ ์ค ๋ช๋ช ๊ฐ๋ก์ค์ ๋ฐ์ดํฐ๋ง ์ ํํ ๋ ์ฌ์ฉ
ํ๋ก์ ์ (projection)
์ด ๋จ์๋ก ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๋ ๋ฐฉ์
์กฐ์ธ(join)
๋ ๊ฐ ์ด์์ ํ ์ด๋ธ์ ์ ์์ ์ฐ๊ฒฐํ์ฌ ๋ง์น ํ๋์ ํ ์ด๋ธ์ธ ๊ฒ์ฒ๋ผ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๋ ๋ฐฉ์
โ SELECT๋ฌธ
SELECT๋ฌธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ณด๊ด๋์ด ์๋ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๋ ๋ฐ ์ฌ์ฉ
SELECT์ ๊ณผ FROM์ ์ ๊ธฐ๋ณธ ๊ตฌ์ฑ์ผ๋ก SELECT๋ฌธ์ ์์ฑ
FROM์ ์ ์กฐํํ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ํ ์ด๋ธ ์ด๋ฆ์ ๋ช ์, SELECT์ ์ FROM์ ์์ ๋ช ์ํ ํ ์ด๋ธ์์ ์กฐํํ ์ด์ด๋ ์ฌ๋ฌ ์ด์ ์ ์ฅ๋ ๋ฐ์ดํฐ์ ์กฐํฉ ๋๋ ์ฐ์ฐ์์ ์ง์ ํ ์ ์์
โ * ์ ์คํฐ๋ฆฌ์คํฌ
๋ชจ๋ ์ปฌ๋ผ์ ์ ํํ ๋ ์ฌ์ฉํ๊ฑฐ๋ ๊ณฑํ๊ธฐ ์ฐ์ฐ ์ ์ฌ์ฉ
๊ทธ๋ฌ๋ ์ด๋ค ์ปฌ๋ผ ์ ๋ณด๋ฅผ ์ด์ฉํ๋์ง ํ์ธ์ด ์ด๋ ต๊ณ , ์ฑ๋ฅ์ด ๊ฐ์ํ๊ธฐ ๋๋ฌธ์ ์ค๋ฌด์์๋ ์์ฃผ ์ฌ์ฉํ์ง ์์.
โผ ์ง์ ํ ์ด๋ธ์์ ๋ชจ๋ ๋ฐ์ดํฐ ์กฐํํ๊ธฐ
โผ ์ง์ ํ ์ด๋ธ์์ ์ง์ID, ์ด๋ฆ, ์ฑ๋ณ, ๋์ด ์กฐํํ๊ธฐ
โ DISTINCT
SELECT๋ฌธ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์กฐํํ ํ DISTINCT๋ฅผ ์ฌ์ฉํ์ฌ ์ค๋ณต์ ์ ๊ฑฐ
SELECT์ ์ ์ด ์ด๋ฆ์ ๋ช ์ํ๊ธฐ ์ ์ ์ ํ์ ์ผ๋ก ์ฌ์ฉํ ์ ์์
์นผ๋ผ์ด ์ฌ๋ฌ๊ฐ์ผ ๊ฒฝ์ฐ์๋ ์ด๋ฅผ ์กฐํฉํ์ฌ ์ค๋ณต์ ์ ๊ฑฐํจ
โผ DISTINCT๋ก ์ค๋ณต๊ฐ ์ ๊ฑฐํ๊ธฐ
โ AS
SELECT ๋ถ๋ถ์์ ์ถ๋ ฅํ๋ ค๋ ์นผ๋ผ์ ์ด๋ฆ์ ๋ฐ๊ฟ์ค.
SELECT์ ์ ๋ช ์ํ ์ด ์ด๋ฆ์ด ๊ฒฐ๊ณผ ํ๋ฉด ์์ชฝ์ ์ถ๋ ฅ๋จ. SQL๋ฌธ์์๋ ์ต์ข ์ถ๋ ฅ๋๋ ์ด ์ด๋ฆ์ ์์๋ก ์ง์ ํ ์ ์์. ์ด๋ ๊ฒ ๋ณธ๋ ์ด ์ด๋ฆ ๋์ ๋ถ์ด๋ ์ด๋ฆ์ ๋ณ์นญ(alias)๋ผ๊ณ ํจ
AS ์ฌ์ฉ ์ ์ฃผ์์ฌํญ
1. ์ด๋ฆ์๋ ๋์ด์ฐ๊ธฐ๋ฅผ ์ฌ์ฉํ ์ ์์. ๋์ด์ฐ๊ธฐ ๋์ ์ธ๋๋ฐ ์ฌ์ฉ
2. ์ซ์๋ฅผ ๋จผ์ ์ฌ์ฉํ ์ ์์
3. ํน์๋ฌธ์๋ $, _, #๋ง ์ฌ์ฉ ๊ฐ๋ฅ
4. ์์ฝ์ด(SELECT, FROM, AS ๋ฑ๊ณผ ๊ฐ์ด ์ด๋ฏธ ๋ง๋ค์ด์ ธ ์๋ ๋ฌธ๋ฒ)๋ ์ฌ์ฉํ ์ ์์
โผ alias ์ฌ์ฉ ์
โผ alias ์ฌ์ฉ ํ
โ NULL
์์ง ์ ํด์ง์ง ์์ ๊ฐ์ ํํํ ๋ ์ฌ์ฉ
NULL์ด ํ์ํ ์ด์
1) ์์ง ์ด๋ค ๊ฐ์ด ๋ค์ด์ค์ง ์์์์ ํํ
2) ํ ์ด๋ธ ํน์ฑ์ ํ๊ณผ ์ด์ ํํ๋ฅผ ์ ์งํด์ผ ํ๋ฏ๋ก ๋น ์นธ์ NULL ๊ฐ์ ๋ฃ์ด์ ํ๊ณผ ์ด์ ํํ ์ ์ง
๐ WHERE์ ๊ณผ ์ฐ์ฐ์
๐ WHERE์
WHERE์ ์ SELECT๋ฌธ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์กฐํํ ๋ ํน์ ์กฐ๊ฑด์ ๊ธฐ์ค์ผ๋ก ์ํ๋ ํ์ ์ถ๋ ฅํ๋ ๋ฐ ์ฌ์ฉ
SELECT [์กฐํํ ์ด1 ์ด๋ฆ], [์ด2 ์ด๋ฆ], ..., [์ดN ์ด๋ฆ] (3) SELECT์์ ๊ฐ์ ธ์ค๋ ค๋ ์นผ๋ผ์ ๊ณจ๋ผ ์ถ๋ ฅ
FROM [์กฐํํ ํ ์ด๋ธ ์ด๋ฆ] (1) ํ ์ด๋ธ์ ๊ฐ์ ธ์ด
WHERE [์กฐํํ ํ์ ์ ๋ณํ๊ธฐ ์ํ ์กฐ๊ฑด์] ; (2) WHERE ์กฐ๊ฑด์ ๋ถํฉํ๋ ํ(ํํ)์ ๊ณ ๋ฆ
WHERE์ด ํฌํจ๋ SELECT๋ฌธ์ ์คํํ๋ฉด ์กฐํํ ํ ์ด๋ธ์ ๊ฐ ํ์ WHERE์ ์ ์กฐ๊ฑด์์ ๋์ ํ์ฌ ๊ฒฐ๊ณผ๊ฐ '์ฐธ'์ธ ๊ฒฝ์ฐ์๋ง ์ถ๋ ฅ
โผ WHERE์ ๋ฌธ์ ํ์ด
๐ AND, OR ์ฐ์ฐ์
WHERE์ ์์๋ ์กฐ๊ฑด์์ ์ฌ๋ฌ๊ฐ ์ง์ ํ ์ ์์. ์ด๋ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ผ๋ฆฌ ์ฐ์ฐ์ AND, OR
AND ์ฐ์ฐ์ ์ฌ์ฉํ์ ๋์ ๊ฒฐ๊ณผ
ํผ์ฐ์ฐ์ | TRUE | FALSE |
TRUE | TRUE | FALSE |
FALSE | FALSE | FALSE |
OR ์ฐ์ฐ์ ์ฌ์ฉํ์ ๋์ ๊ฒฐ๊ณผ
ํผ์ฐ์ฐ์ | TRUE | FALSE |
TRUE | TRUE | TRUE |
FALSE | TRUE | FALSE |
โป WHERE์ ์ ์ฌ์ฉํ ์ ์๋ ์กฐ๊ฑด์์ ๊ฐ์๋ ์ฌ์ค์ ์ ํ์ด ์๋ค๊ณ ๋ณด์๋ ๋ฌด๋ฐฉํจ
โป ๋ณดํต ์ค๋ฌด์์ ์ฌ์ฉํ๋ SELECT๋ฌธ์ OR ์ฐ์ฐ์๋ณด๋ค AND ์ฐ์ฐ์๋ฅผ ๋ง์ด ์ฌ์ฉ. ๋ค์ํ ์กฐ๊ฑด์ ํ ๋ฒ์ ๋ง์กฑ์ํค๋ ๋ฐ์ดํฐ๋ง์ ์ถ์ถํด์ผ ํ ๋๊ฐ ๋ง๊ธฐ ๋๋ฌธ
โผ AND, OR ์ฐ์ฐ์ ํ์ฉ ์ฌ๋ฌ ์กฐ๊ฑด WHERE์ ๋ฌธ์ ํ์ด
'full stack > database' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Oracle Database] DDL - CREATE, ALTER (2023.03.24) (0) | 2023.03.24 |
---|---|
[Oracle Database] JOIN, GROUP BY, ์ง๊ณ ํจ์, HAVING (2023.03.22~23) (0) | 2023.03.24 |
[Oracle Database] DML(Data Manipulation Language) (2023.03.23~24) (0) | 2023.03.24 |
[Oracle Database] ์ค๋ผํด ํจ์ (0) | 2023.03.22 |
[Oracle Database] ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ๋ ์ก๊ธฐ (0) | 2023.03.19 |