์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- ์ํ
- ๋ฐ์ํ
- ์๋ฐ
- JavaScript
- ๊น๋ฏธ๊ฒฝ์๋งํ์์
- database
- Python
- ์นํผ๋ธ๋ฆฌ์ฑ
- ๊น๋ฏธ๊ฒฝ
- css
- ์ฑ
- ์ฝ๋ฉ
- ComputerScience
- K๋ฐฐํฐ๋ฆฌ
- ๋ผํ๋ผ์ค์๋ง๋
- ์ปดํจํฐ๊ณผํ
- ๋ง์ผ๋ด๊ฐ์ธ์์๋ค์์ฐ๋ค๋ฉด
- ์นํ์ด์ง๋ง๋ค๊ธฐ
- Java
- K๋ฐฐํฐ๋ฆฌ๋ ๋ณผ๋ฃจ์
- ํ๋ก๊ทธ๋๋ฐ
- ๊ฐ๋ฐ
- ํ์ด์ฌ
- ์ฅํธ์์ค
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ์๋ฐ์คํฌ๋ฆฝํธ
- ์ค๋ผํด
- ๋ ์
- html
- ๊นํ๋จ
- Today
- Total
JiYoung Dev ๐ฅ
[Oracle Database] ์ค๋ผํด ํจ์ ๋ณธ๋ฌธ
06-01 ์ค๋ผํด ํจ์
SELECT์์ ์ฌ์น์ฐ์ฐํ๊ธฐ
๋ํ๊ธฐ +, ๋นผ๊ธฐ -, ๊ณฑํ๊ธฐ *, ๋๋๊ธฐ / ๊ฐ๋ฅํ๋ ๋๋จธ์ง๋ %๊ฐ ์๋ mod ์ฌ์ฉ
ํจ์๋?
ํน์ ๊ฒฐ๊ณผ ๋ฐ์ดํฐ๋ฅผ ์ป๊ธฐ ์ํด ์ด๋ค ๊ฐ์ด๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํ๋๋ฐ ๊ทธ ๊ฐ์ ๋ฐ๋ผ ๊ฐ๊ณต ๋๋ ์ฐ์ฐ์ ๊ณผ์ ์ ๊ฑฐ์ณ ๊ฒฐ๊ณผ๊ฐ์ด ๋์ด. ์ฆ, ์ค๋ผํด ํจ์๋ ํน์ ํ ๊ฒฐ๊ณผ ๊ฐ์ ์ป๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํ ์ ์๋ ํน์ ๋ช ๋ น์ด
์ค๋ผํด ํจ์์ ์ข ๋ฅ
์ค๋ผํด์์ ๊ธฐ๋ณธ์ผ๋ก ์ ๊ณตํ๊ณ ์๋ ๋ด์ฅ ํจ์(built-in function)์ ์ฌ์ฉ์๊ฐ ํ์์ ์ํด ์ง์ ์ ์ํ ์ฌ์ฉ์ ์ ์ ํจ์(user-defined function)์ผ๋ก ๋๋จ
๋ด์ฅ ํจ์์ ์ข ๋ฅ
๋ด์ฅ ํจ์๋ ์ ๋ ฅ ๋ฐฉ์์ ๋ฐ๋ผ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ฌ์ฉํ๋ ํ์ด ๋๋จ
๋ฐ์ดํฐ๊ฐ ํ ํ์ฉ ์ ๋ ฅ๋๊ณ ์ ๋ ฅ๋ ํ ํ๋น ๊ฒฐ๊ณผ๊ฐ ํ๋์ฉ ๋์ค๋ ํจ์๋ฅผ ๋จ์ผํ ํจ์(single-row function)
์ฌ๋ฌ ํ์ด ์ ๋ ฅ๋์ด ํ๋์ ํ์ผ๋ก ๊ฒฐ๊ณผ๊ฐ ๋ฐํ๋๋ ํจ์๋ฅผ ๋ค์คํ ํจ์(multiple-row function)
๋ฌธ์ํ ํจ์
๋/์๋ฌธ์๋ฅผ ๋ฐ๊ฟ ์ฃผ๋ LOWER, UPPER, INITCAP ํจ์
โ LOWER
๊ดํธ ์ ๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ์๋ฌธ์๋ก ๋ณํ
LOWER(๋ฌธ์์ด)
โ UPPER
๊ดํธ ์ ๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ๋๋ฌธ์๋ก ๋ณํ
UPPER(๋ฌธ์์ด)
โ INITCAP
๊ดํธ ์ ๋ฌธ์ ๋ฐ์ดํฐ ์ค ์ฒซ ๊ธ์๋ ๋๋ฌธ์๋ก, ๋๋จธ์ง ๋ฌธ์๋ฅผ ์๋ฌธ์๋ก ๋ณํ ํ ๋ฐํ
INITCAP(๋ฌธ์์ด)
๋ฌธ์์ด ๊ธธ์ด๋ฅผ ๊ตฌํ๋ LENGTH ํจ์
ํน์ ๋ฌธ์์ด์ ๊ธธ์ด๋ฅผ ๊ตฌํ ๋ LENGTH ํจ์ ์ฌ์ฉ
LENGTHB ํจ์๋ ๋ฌธ์์ด ๋ฐ์ดํฐ ๊ธธ์ด๊ฐ ์๋ ๋ฐ์ดํธ ์๋ฅผ ๋ฐํํ๋ ํจ์
โป DUAL ํ ์ด๋ธ์ด๋, ์ค๋ผํด์ ์ต๊ณ ๊ถํ ๊ด๋ฆฌ์ ๊ณ์ ์ธ SYS ์์ ์ ํ ์ด๋ธ๋ก SCOTT ๊ณ์ ๋ ์ฌ์ฉํ ์ ์๋ ๋๋ฏธ(dummy) ํ ์ด๋ธ. ์์ ์ฐ์ฐ์ด๋ ํจ์์ ๊ฒฐ๊ณผ ๊ฐ ํ์ธ ์ฉ๋๋ก ์ข ์ข ์ฌ์ฉ
๋ฌธ์์ด ์ผ๋ถ๋ฅผ ์ถ์ถํ๋ SUBSTR ํจ์
โ SUBSTR
SUBSTR(๋ฌธ์์ด ๋ฐ์ดํฐ, ์์์์น, ์ถ์ถ ๊ธธ์ด)
๋ฌธ์์ด ๋ฐ์ดํฐ์ ์์ ์์น๋ถํฐ ์ถ์ถ ๊ธธ์ด๋งํผ ์ถ์ถ,
์์ ์์น๊ฐ ์์์ผ ๊ฒฝ์ฐ์๋ ๋ง์ง๋ง ์์น๋ถํฐ ๊ฑฐ์ฌ๋ฌ ์ฌ๋ผ๊ฐ ์์น์์ ์์
SUBSTR(๋ฌธ์์ด ๋ฐ์ดํฐ, ์์์์น)
๋ฌธ์์ด ๋ฐ์ดํฐ์ ์์ ์์น๋ถํฐ ๋ฌธ์์ด ๋ฐ์ดํฐ ๋๊น์ง ์ถ์ถ
์์ ์์น๊ฐ ์์์ผ ๊ฒฝ์ฐ์๋ ๋ง์ง๋ง ์์น๋ถํฐ ๊ฑฐ์ฌ๋ฌ ์ฌ๋ผ๊ฐ ์์น์์ ์์
โผ smhrd ๊ฐ๋ง ์ถ๋ ฅํ๊ธฐ
โผ ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ์์ ์๋ ์์ผ ์ถ์ถ
โ INSTR
๋ฌธ์์ด ๋ฐ์ดํฐ ์์์ ํน์ ๋ฌธ์ ์์น๋ฅผ ์ฐพ๋ INSTR ํจ์
๋ฌธ์์ด ๋ฐ์ดํฐ ์์ ํน์ ๋ฌธ์๋ ๋ฌธ์์ด์ด ์ด๋์ ํฌํจ๋์ด ์๋์ง๋ฅผ ์๊ณ ์ ํ ๋ ์ฌ์ฉ
INSTR( ๋์ ๋ฌธ์์ด ๋ฐ์ดํฐ
, ์์น๋ฅผ ์ฐพ์ผ๋ ค๋ ๋ถ๋ถ ๋ฌธ์
, ์์น ์ฐพ๊ธฐ๋ฅผ ์์ํ ๋์ ๋ฌธ์์ด ๋ฐ์ดํฐ ์์น
, ์์ ์์น์์ ์ฐพ์ผ๋ ค๋ ๋ฌธ์๊ฐ ๋ช ๋ฒ์งธ์ธ์ง ์ง์ )
โ TRIM
ํน์ ๋ฌธ์์ด์ ์ง์ฐ๋ TRIM, LTRIM, RTRIM ํจ์
์๋ณธ ๋ฌธ์์ด ๋ฐ์ดํฐ๋ฅผ ์ ์ธํ ๋๋จธ์ง ๋ฐ์ดํฐ๋ ๋ชจ๋ ์๋ต ๊ฐ๋ฅ. ์ญ์ ํ ๋ฌธ์๊ฐ ์๋ต๋ ๊ฒฝ์ฐ์๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๊ณต๋ฐฑ์ ์ ๊ฑฐ. ์ญ์ ์ต์ ์ ์ผ์ชฝ์ ์๋ ๊ธ์๋ฅผ ์ง์ฐ๋ LEADING, ์ค๋ฅธ์ชฝ์ ์๋ ๊ธ์๋ฅผ ์ง์ฐ๋ TRAILING, ์์ชฝ์ ๊ธ์๋ฅผ ๋ชจ๋ ์ง์ฐ๋ BOTH ์ฌ์ฉ
TRIM(๋ฌธ์์ด)
ํน์ ๋ฌธ์๋ฅผ ๋ค๋ฅธ ๋ฌธ์๋ก ๋ฐ๊พธ๋ REPLACE ํจ์
โ REPLACE
ํน์ ๋ฌธ์์ด ๋ฐ์ดํฐ์ ํฌํจ๋ ๋ฌธ์๋ฅผ ๋ค๋ฅธ ๋ฌธ์๋ก ๋์ฒดํ ๊ฒฝ์ฐ ์ฌ์ฉ
REPLACE(๋ฌธ์์ด ๋ฐ์ดํฐ ๋๋ ์ด ์ด๋ฆ, ์ฐพ๋ ๋ฌธ์, ๋์ฒดํ ๋ฌธ์)
โผ ์ฐ๋ฝ์ฒ์์ - ์ ์ธํ๊ณ ์ถ๋ ฅ
โ LPAD, RPAD
๋ฐ์ดํฐ์ ๋น ๊ณต๊ฐ์ ํน์ ๋ฌธ์๋ก ์ฑ์ฐ๋ LPAD, RPAD ํจ์
LPAD์ RPAD๋ ๊ฐ๊ฐ Left Padding, Right Padding์ ์๋ฏธ. ๋ฐ์ดํฐ์ ์๋ฆฟ์๋ฅผ ์ง์ ํ ํ ๋ฐ์ดํฐ ๊ธธ์ด๊ฐ ์ง์ ํ ์๋ฆฟ์๋ณด๋ค ์์ ๊ฒฝ์ฐ ๋๋จธ์ง ๊ณต๊ฐ์ ํน์ ๋ฌธ์๋ก ์ฑ์ฐ๋ ํจ์
LPAD(๋ฌธ์์ด ๋ฐ์ดํฐ, ๋ฐ์ดํฐ์ ์๋ฆฟ์, ๋น ๊ณต๊ฐ์ ์ฑ์ธ ๋ฌธ์)
RPAD(๋ฌธ์์ด ๋ฐ์ดํฐ, ๋ฐ์ดํฐ์ ์๋ฆฟ์, ๋น ๊ณต๊ฐ์ ์ฑ์ธ ๋ฌธ์)
๋ ๋ฌธ์์ด ๋ฐ์ดํฐ๋ฅผ ํฉ์น๋ CONCAT ํจ์
๋ ๊ฐ์ ๋ฌธ์์ด ๋ฐ์ดํฐ๋ฅผ ํ๋์ ๋ฐ์ดํฐ๋ก ์ฐ๊ฒฐํด ์ฃผ๋ ์ญํ
|| ์ฐ์ฐ์์ ์ ์ฌํจ
06-03 ์ซ์ ๋ฐ์ดํฐ๋ฅผ ์ฐ์ฐํ๊ณ ์์น๋ฅผ ์กฐ์ ํ๋ ์ซ์ ํจ์
ํน์ ์์น์์ ๋ฐ์ฌ๋ฆผํ๋ ROUND ํจ์
ํน์ ์ซ์๋ฅผ ๋ฐ์ฌ๋ฆผํ๋ ๋ฐ์ฌ๋ฆผํ ์์น ์ง์ ๊ฐ๋ฅ
๋ฐ์ฌ๋ฆผํ ์์น ์ง์ ํ์ง ์์ผ๋ฉด ์์์ ์ฒซ์งธ ์๋ฆฌ์์ ๋ฐ์ฌ๋ฆผํ ๊ฒฐ๊ณผ ๋ฐํ
0์์ ์์๋ก ๋ด๋ ค๊ฐ๋ฉด ์์ฐ์ ์ชฝ์ผ๋ก ํ ์๋ฆฌ์ฉ ์๋ก ๋ฐ์ฌ๋ฆผ
ROUND(์ซ์, ๋ฐ์ฌ๋ฆผ ์์น)
ํน์ ์์น์์ ๋ฒ๋ฆฌ๋ TRUNC ํจ์
์ซ์๋ฅผ ๋ฒ๋ฆผ ์ฒ๋ฆฌํ๋ ํจ์
ROUND ํจ์์ ๋ง์ฐฌ๊ฐ์ง ๋ฐฉ์์ผ๋ก ๋ฒ๋ฆผ ์ฒ๋ฆฌํ ์๋ฆฟ์ ์ง์ ๊ฐ๋ฅ
๋ฐ์ฌ๋ฆผํ ์์น ์ง์ ํ์ง ์์ผ๋ฉด ์์์ ์ฒซ์งธ์๋ฆฌ์์ ๋ฒ๋ฆผ ์ฒ๋ฆฌ
์ง์ ํ ์ซ์์ ๊ฐ๊น์ด ์ ์๋ฅผ ์ฐพ๋ CEIL, FLOOR ํจ์
CEIL ํจ์๋ ์ ๋ ฅ๋ ์ซ์์ ๊ฐ์ฅ ๊ฐ๊น์ด ํฐ ์ ์๋ฅผ ๋ฐํ
FLOOR๋ ์ ๋ ฅ๋ ์ซ์์์ ๊ฐ์ฅ ์์ ์ ์๋ฅผ ๋ฐํ
์ซ์๋ฅผ ๋๋ ๋๋จธ์ง ๊ฐ์ ๊ตฌํ๋ MOD ํจ์
์ค๋ผํด์์๋ ๋๋จธ์ง๋ฅผ ๊ตฌํ ๋ MOD ํจ์ ์ฌ์ฉ (์๋ฐ์์๋ % ์ฌ์ฉ๊ฐ๋ฅํ๋ ์ค๋ผํด ๋ฐ์ดํฐ๋ฒ ์ด์ค์์๋ ์ฌ์ฉ ๋ถ๊ฐ)
06-04 ๋ ์ง ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ๋ ์ง ํจ์
์ฐ์ฐ | ์ค๋ช |
๋ ์ง ๋ฐ์ดํฐ + ์ซ์ | ๋ ์ง ๋ฐ์ดํฐ๋ณด๋ค ์ซ์๋งํผ ์ผ์ ์ดํ์ ๋ ์ง |
๋ ์ง ๋ฐ์ดํฐ - ์ซ์ | ๋ ์ง ๋ฐ์ดํฐ๋ณด๋ค ์ซ์๋งํผ ์ผ์ ์ด์ ์ ๋ ์ง |
๋ ์ง ๋ฐ์ดํฐ - ๋ ์ง ๋ฐ์ดํฐ | ๋ ๋ ์ง ๋ฐ์ดํฐ ๊ฐ์ ์ผ์ ์ฐจ์ด |
๋ ์ง ๋ฐ์ดํฐ + ๋ ์ง ๋ฐ์ดํฐ | ์ฐ์ฐ ๋ถ๊ฐ๋ฅ |
SYSDATE
์ ๋ ฅ์ ๋ฐ๋ก ์ถ๋ ฅ์ด ๋๋ฉฐ, ํ์ฌ ์๊ฐ์ ์ด๋จ์๊น์ง ๋ ์งํ ๋ฆฌํฐ๋ด๋ก ์ถ๋ ฅ
์ค๋ฌด์์๋ ์๋์ ๊ฐ์ด ๋ ์ง๋ฅผ ์กฐ์ํ๊ธฐ๋ ํจ
โผ 3์ผํ ๋ ์ง๊ฐ ๊ตฌํ๊ธฐ
๋์์ค๋ ์์ผ, ๋ฌ์ ๋ง์ง๋ง ๋ ์ง๋ฅผ ๊ตฌํ๋ NEXT_DAY, LAST_DAY ํจ์
์ ๋ ฅ๋ฐ์ ๋ ์งํ ๊ฐ์ ๋ํด ๋์์ค๋ ์์ผ(NEXT_DAY) ํน์ ํด๋น ์์ ๋ง์ง๋ง ๋ ์ง(LAST_DAY)๋ฅผ ์ถ๋ ฅ
๋ช ๊ฐ์ ์ดํ ๋ ์ง๋ฅผ ๊ตฌํ๋ ADD_MONTHS ํจ์
ํน์ ๋ ์ง์ ์ง์ ํ ๊ฐ์ ์ ์ดํ ๋ ์ง ๋ฐ์ดํฐ๋ฅผ ๋ฐํํ๋ ํจ์
์ ๋ ฅ๋ฐ์ ๋ ์งํ ๊ฐ์ ๋ํด ์ซ์ํ ๋ฆฌํฐ๋ด๋งํผ ๊ฐ์ ์๋ฅผ ๊ฐ๊ฐํ์ฌ ์ถ๋ ฅ
โผ 5๋
ํ ์
์ฌ์ผ์ ๊ตฌํ๊ธฐ
๋ ๋ ์ง ๊ฐ์ ๊ฐ์ ์ ์ฐจ์ด๋ฅผ ๊ตฌํ๋ MONTHS_BETWEEN ํจ์
๋ ๊ฐ์ ๋ ์ง ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํ๊ณ ๋ ๋ ์ง ๊ฐ์ ๊ฐ์ ์ ์ฐจ์ด๋ฅผ ๊ตฌํ๋ ๋ฐ ์ฌ์ฉ
06-05 ์๋ฃํ์ ๋ณํํ๋ ํ ๋ณํ ํจ์
๊ฐ ๋ฐ์ดํฐ์ ์ง์ ๋ ์๋ฃํ์ ๋ฐ๊ฟ์ฃผ๋ ํจ์
๋ ์ง → ๋ฌธ์ํ๋ณํ๊ณผ ๋ฌธ์ → ๋ ์งํ๋ณํ์ ์์ฃผ ์ฌ์ฉ
๋ ์ง, ์ซ์ ๋ฐ์ดํฐ๋ฅผ ๋ฌธ์ ๋ฐ์ดํฐ๋ก ๋ณํํ๋ TO_CHAR ํจ์
๋ ์ง, ์ซ์ ๋ฐ์ดํฐ๋ฅผ ๋ฌธ์ ๋ฐ์ดํฐ๋ก ๋ณํ
์ฃผ๋ก ๋ ์ง ๋ฐ์ดํฐ์์ ๋ฌธ์ ๋ฐ์ดํฐ๋ก ๋ณํํ๋๋ฐ ๋ง์ด ์ฌ์ฉ
โผ ์ ์ฌ์ผ์์์ ์ฐ๋ ์ถ์ถ
๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ์ซ์ ๋ฐ์ดํฐ๋ก ๋ณํํ๋ TO_NUMBER ํจ์
์ฐ์ฐ์ ํ๊ธฐ ์ ์ ๋จผ์ ํ๋ณํ์ด ๋ฐ์ํจ
ํ ๋ณํ ์ฐ์ ์์ : ๋ฌธ์ํ → ์ซ์ํ → ๋ ์งํ
SELECT ์ด๋ฆ + 1000 FROM ์ง์ ;
๋ช ๋ น์ ์คํํ๋ฉด ๋ฌธ์ํ์ธ ์ด๋ฆ์ ์ซ์ํ์ผ๋ก ํ๋ณํ ํ๋ ค๊ณ ํจ
SELECT TO_NUMBER(์ด๋ฆ) + 1000 FROM ์ง์ ;
๊ทธ๋ฌ๋ ์ด๋ ๋ถ๊ฐํจ์ผ๋ก ์ค๋ฅ ๋ฐ์
๊ฐ๋ฅํ ํ๋ณํ
๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ๋ ์ง ๋ฐ์ดํฐ๋ก ๋ณํํ๋ TO_DATE ํจ์