대소문자 변환함수
문자 조작함수
CONCAT(expr1,expr2)
(==) || (연결연산자, 2개 이상 연결가능)
두 인수를 연결해주는 함수
mysql은 concat 함수도 2개 이상 가능
SUBSTR(expr1, expr2, expr3)
문자열의 일부분을 반환해주는 함수
- expr1 : 반환할 문자열
- expr2 : 시작위치 (음수 : 시작위치를 끝에서부터 찾아옴)
- expr3 : 반환할 문자수(생략가능 : 시작위치에서 끝까지 반환함.)
ex) substr(주민번호, 1, 6) => 910523
ex) substr('Kochhar', -3, 2) => ha
LENGTH(expr1)
문자열의 길이를 반환해주는 함수
INSTR(expr1, expr2)
문자열(expr1)로부터 특정 문자(expr2)의 첫번째 위치값을 반환해주는 함수
ex) instr('HelloWorld','o') => 5
LPAD(expr1, expr2, expr3)
오른쪽 정렬을 해주는 함수
- expr1 : 반환할 문자열
- expr2 : 전체 자리수
- expr3 : 남는 공간을 채울 문자
RPAD(expr1, expr2, expr3)
왼쪽 정렬을 해주는 함수
- expr1 : 반환할 문자열
- expr2 : 전체 자리수
- expr3 : 남는 공간을 채울 문자
REPLACE(expr1, expr2, expr3)
문자열(expr1)로부터 특정 문자(expr2)를 다른 문자(expr3)으로 교체해주는 함수
TRIM(expr1 from expr2)
문자열(expr2)로부터 특정문자(expr1)가 접두어/접미어에 있다면 삭제(절단)해주는 함수
ex) trim('H' from 'HHelloWHorHldHHH') => 출력 : elloWHorHld
- Oracle에서는 from 절이 없으면 결과 보여지지 않음. 단순 함수 및 계산 결과 볼 때 from 절에, 있는 테이블을 입력해야 함
- 하나의 열과 하나의 값이 있는 테이블을 사용
DUAL 테이블
- SYS 소유
- 함수 및 계산 결과를 볼 때 사용하는 공용 테이블
- DUMMY라는 하나의 열과 값이 X인 하나의 행을 포함
- SQL> desc dual
- SQL> select * from dual
ROUND 반올림
TRUNC 버림
MOD 나머지
sysdate 오늘 날짜 및 시간 반환
기본포맷 'DD-MON-RR'만 보여줌
날짜 연산
날짜 + 숫자
날짜 - 숫자
날짜 - 날짜
** 근무한 주수 구하기
날짜 + 숫자/24 : 날짜에 시간수 더함
날짜 조작 함수
MONTH_BETWEEN 두 날짜 간의 월 수
ADD_MONTHS 날짜에 월 추가
NEXT_DAY(날짜, 요일) 다음 요일 날짜
LAST_DAY 그 달의 마지막날
ROUND 날짜 반올림
15일기준
6월기준
TRUNC 날짜 절단
- TRUNC(SYSDATE,'MONTH')
- TRUNC(SYSDATE,'YEAR')
TO_CHAR
DATE → CHAR
TO_CHAR(date, 'format_model')
요소 | 결과 |
---|---|
YYYY | 숫자로 된 전체 연도 |
YY, RR | 숫자로 된 2자리 연도 |
YEAR | 영어 철자로 표기된 연도 |
MM | 월의 2자리 값 |
MONTH | 전체 월 이름 |
MON | 월의 3자 약어 |
DY | 3문자로 된 요일 약어 |
DAY | 요일의 전체 이름 |
DD | 숫자 형식의 월간 일 |
- 숫자형식은 대소문자 구분X, 문자는 대소문자 구분함
ex) MON : DEC, Mon : Dec, mon : dec
- 시간 요소 날짜에서 시간 부분의 형식 지정
HH24:MI:SS AM -> 15:45:32 PM
- 접미어 sp, spth 숫자를 영어 철자로 표기
ddspth -> fourteenth
- 문자열은 큰따옴표로 묶어 추가
DD "of" MONTH -> 12 of OCTOBER
- 접두어 fm 선행하는 공백, 0을 제거하는 요소
fmDD -> 01이면 1로 출력됨
NUMBER → CHAR
TO_CHAR(number, 'format_model')
요소 | 결과 |
---|---|
9 | 숫자를 나타냄 |
0 | 0이 표시되도록 강제 적용 |
$ | 부동 달러 기호 배치 |
L | 부동 로컬 통화 기호 사용 |
. | 소수점 출력 |
, | 천단위 표시자로 쉼표 출력 |
자리수 모자라면 ### 으로 표시됨
TO_NUMBER
TO_DATE