1. 문자함수
□ INITCAP
○ 인수로 입력되는 칼럼이나 표현식의 문자열에서 첫 번째 영문자를 대문자로 변환하는 함수
○ INITCAP (expr | column)
select name, userid, initcap(userid)
from student
□ LOWER, UPPER
○ Lower 함수 : 인수로 입력되는 칼럼이나 표현식의 문자열 전체를 소문자로 변환
- LOWER (expr | column )
○ Upper 함수 : 문자열 전체를 대문자로 변환하는 함수
- UPPER (expr | column )
select userid, lower(userid), upper(userid)
from student
where studno = 20101;
□ LENGTH, LENGTHB
○ LENGTH 함수는 인수로 입력되는 칼럼이나 표현식의 문자열의 길이를 반환하는 함수
○ LENGTHB 함수는 문자열의 바이트 수를 반환하는 함수
select dname, length(dname), lengthb(dname)
from department;
□ CONCAT : 첫 번째 문자와 두 번째 문자를 연결
○ CONCAT(expr|column, expr|column)
select concat(concat(name, '의 직책은'), position)
from professor;
□ SUBSTR : 문자열의 일부를 추출하는 함수
○ 문자열에서 m번째 문자부터 n개의 문자 추출
○ m이 음수이면 시작위치는 문자열의 마지막
○ n을 생략하면 m부터 마지막 문자까지 추출
○ SUBSTR (expr | column, m[,n] )
select name, idnum, substr(idnum, 1, 6) birth_date, substr(idnum, 3,2) birth_mon
from student
where grade = '1'
□ INSTR
○ 문자열중에서 사용자가 지정한 특정 문자가 포함된 위치를 반환하는 함수
○ n번째 위치부터 m번째 char의 위치를 찾음
○ 만약 n이 음수이면 char 의 뒤부터 찾음
○ INSTR (expr | column, char[,n[m]] )
select dname, instr(dname, '과') from department;
□ LPAD, RPAD
○ LPAD와 RPAD 함수는 문자열이 일정한 크기가 되도록 왼쪽 또는 오른쪽에 지정한 문자를 삽입하는 함수
○ LAPD (expr | column, m[,char])
○ RAPD (expr | column, m[,char])
○ m 폭만큼 공백을 왼쪽 또는 오른쪽에 char 문자 삽입, char가 없으면 공백 삽입
select position, lpad(position, 10, '*') lapad_position, userid, rpad(userid, 12, '*') rpad_user_id
from professor;
2. 숫자함수
□ ROUND 함수 : 지정한 자리 이하에서 반올림한 결과 값을 반환하는 함수
○ ROUND (expr | column, n )
select name, sal, sal/22, round(sal/22), round(sal/22,2), round(sal/22,-1)
from professor where deptno = 101
□ Trunc 함수 : 지정한 소수점 자리수 이하를 절삭한 결과 값을 반환하는 함수
○ TRUNC (expr | column, n)
○ expr 또는 column 값을 소수점 이하 n+1자리에서 절삭한 값
select name, sal, sal/22, trunc(sal/22), round(sal/22,2), trunc(sal/22,-1)
from professor
where deptno = 101;
□ MOD 함수 : MOD 함수는 나누기 연산후에 나머지를 출력하는 함수
○ mod (m, n )
○ m을 n으로 나눈 나머지
select name, sal, comm, mod(sal,comm)
from professor
where deptno = 101;
□ CEIL, FLOOR 함수
○ CEIL 함수는 지정한 숫자보다 크거나 같은 정수 중에서 최소 값을 출력하는 함수
○ FLOOR함수는 지정한 숫자보다 작거나 같은 정수 중에서 최대 값을 출력하는 함수
○ CEIL (expr | column )
○ FLOOR (expr | column )
select ceil(19.6), floor(13.64) from dual;
3. 날짜함수
□ SYSDATE 함수
○ SYSDATE 함수는 시스템에 저장된 현재 날짜를 반환하는 함수
○ FLOOR함수는 지정한 숫자보다 작거나 같은 정수 중에서 최대 값을 출력하는 함수
select sysdate from dual;
□ MONTHS_BETWEEN, ADD_MONTHS
○ MONTHS_BETWEEN과 ADD_MONTHS 함수는 월 단위로 날짜연산을 하는 함수
○ MONTHS_BETWEEN (date1, date2)
○ ADD_MONTHS (date, 개월 수)
○ MONTHS_BETWEEN : date1과 date2 사이의 개월 수를 계산
○ ADD_MONTHS : date에 개월 수를 더한 날짜 계산
select profno, hiredate,
MONTHS_BETWEEN(SYSDATE, hiredate) TENURE,
ADD_MONTHS(hiredate, 6) REVIEW
from professor
where months_between(sysdate, hiredate) < 120;
'DB > SQL_Example' 카테고리의 다른 글
일반함수 (by Oracle) (0) | 2024.01.19 |
---|---|
데이터 타입변환 (by Oracle) (0) | 2024.01.19 |
오라클DB 기본 쿼리문 ② (0) | 2024.01.17 |
오라클DB 기본 쿼리문 ① (0) | 2024.01.16 |
[오라클]오류메시지별 조치방법 (0) | 2024.01.16 |