728x90
숫자함수
ROUND 함수
: 반올림 (4이하는 버리고 5이상은 올림)
round(기준데이터);
round(기준데이터,소수점이하 자릿수 표현);
SELECT round(45.5) FROM dual; // 46
SELECT round(45.573,2) FROM dual; // 45.57
TRUNC 함수
: 버림함수
trunc(기준데이터);
trunc(기준데이터,소수점이하 자릿수 표현);
SELECT trunc(45.56) FROM dual; //45
SELECT trunc(45.577,2) FROM dual; //45.57
FLOOR 함수
: 소수점 이하 버림함수 (실수 -> 정수)
floor(기준데이터);
SELECT floor(45.56) FROM dual; // 45
SELECT floor(45.577,2) FROM dual; //에러
MOD 함수
: 나머지 구하기
mod(A,B) : A를 B로 나눈 나머지
SELECT mod(10,5) from dual; //0
SELECT mod(10,3) from dual; //1
SELECT mod(10,11) from dual;//10
mod(empno,2)=0; //짝수
mod(empno,2)=1; //홀수
문자함수
UPPER
: 대문자
SELECT upper('Welcome to oracle') FROM dual;
--> WELCOME TO ORACLE
LOWER
: 소문자
SELECT lower('Welcome to oracle') FROM dual;
--> welcome to oracle
INITCAP
: 이니셜에 대한 대문자 변환
SELECT initcap('Welcome to ORACLE') FROM dual;
--> Welcome To Oracle
SELECT empno, initcap(ename) FROM emp WHERE deptno = 30
LENGTH
: 문자열 길이(문자갯수)
SELECT length('OracleSQL') FROM dual;
--> 9
SELECT lengthb('Oracle') FROM dual; --byte 저장공간
--> 6
SELECT lengthb('나길동') FROM dual;
--> 9
INSTR
: 특정문자가 출현하는 위치를 얻어오는 함수 (자바의 indexOf('a'))
instr(기준데이터, 특정문자)instr(기준데이터, 특정문자, 시작인덱스, 출현횟수)
SELECT instr('welcome to oracle', 'o') FROM dual; -- 첫번째 'o'=> 5
select instr('welcome to oracle', 'o', 1, 2) --두번째 'o'=> 10
SUBSTR
: 문자열 일부분 추출, 부분 문자열 얻기
substr(기준문자열, 시작인덱스, 부분문자열 갯수)
SELECT substr('welcome to oracle', 12, 6) FROM dual;
-- 12번째 문자부터 6개의 문자 얻어오기
LPAD/RPAD
: 오른쪽/왼쪽 정렬 후 왼쪽/오른쪽 공백에 특정 문자 채우기
lpad(기준문자열, 전체길이, 채울문자)rpad(기준문자열, 전체길이, 채울문자)
SELECT lpad('oracle', 10, '#' ) FROM dual;
--> ####oracle
SELECT rpad('oracle', 10, '#' ) FROM dual;
--> oracle####
LTRIM/RTRIM
: 왼쪽/오른쪽(연속된) 공백 또는 (연속된) 특정문자 제거
SELECT length(ltrim(' oracle')) FROM dual;
-- oracle 6
SELECT length(ltrim('aaaaoracle','a')) FROM dual;
-- oracle 6 //'a' 특정문자 제거
TRIM
: 좌우의 연속된 공백을 제거해 주는 함수
SELECT length(trim(' oracle ')) FROM dual;
-- oracle 6
'Web develop > SQL' 카테고리의 다른 글
[SQL/ORACLE] 그룹함수, DECODE 함수 (1) | 2019.05.29 |
---|---|
[SQL/ORACLE] 날짜 함수 , 형변환 함수 (0) | 2019.05.28 |
[SQL/ORACLE] SELECT절 (실행순서, 연산자, WHERE, ORDER BY) (0) | 2019.05.27 |
[SQL/ORACLE] TCL (0) | 2019.05.24 |
[SQL/ORACLE] DML (0) | 2019.05.23 |