해당하는 값들을 계산해서 출력해 준다.
select sin(10), cos(10), tan(10), log(10,2), power(6,4) from dual;
SIN(10) COS(10) TAN(10) LOG(10,2) POWER(6,4)
---------- ---------- ---------- ---------- ----------
-.54402111 -.83907153 .648360827 .301029996 1296
round(반올림 할 수, +표시할 자리 수)
round(반올림 할 수, -정수 자리에서 버림할 자리 수)
select round(12540.379, 2) from dual; //셋째 자리에서 반올림 하여 소수점 둘째 자리까지 표시해 준다.
select round(12540.379, -2) from dual; //정수 자리 2번째 자리에서 반올림 한다.
select round(12540.579, 0) from dual; //소수점 첫번째 자리에서 반올림한다.
ROUND(12540.379,2) ROUND(12540.379,-2) ROUND(12540.579,0)
------------------ ------------------- ------------------
12540.38 12500 12541
소수점 절사나 날짜의 시간을 없앨 때 사용한다.
형식은 반올림 관련 함수와 동일하나 반올림을 하지 않고, 버림한다.
select trunc(12540.379, 2) from dual; //셋째 자리에서 버림 하여 소수점 둘째 자리까지 표시해 준다.
select trunc(12560.379, -2) from dual; //정수 자리 2번째 자리에서 버림 한다.
select trunc(12540.579, 0) from dual; //소수점 첫번째 자리에서 버림한다.
TRUNC(12540.379,2) TRUNC(12560.379,-2) TRUNC(12540.579,0)
------------------ ------------------- ------------------
12540.37 12500 12540
각각 올림과 내림한 값을 반환해 준다.
select floor(10.98), ceil(10.14) from dual;
FLOOR(10.98) CEIL(10.14)
------------ -----------
10 11
select saname, sapay, round(sapay/12, -2)[->십단위 반올림] "월급", trunc(sapay*0.033, -1)[->원단위 절삭] "세금" from sawon;
select length('IT여성기업협회'), lengthb('IT여성기업협회') from dual;
LENGTH('IT여성기업협회') LENGTHB('IT여성기업협회')
------------------------ -------------------------
8 14
LTRIM 함수, RTRIM 함수는 반복적인 문자나 특정 문자를 제거할 때 사용하기도 한다.
(옵션은 없어도 된다.)
select trim(' kibwa kibwa ') a, rtrim(' kibwa kibwa ') a, ltrim(' kibwa kibwa ') a from dual;
select trim('k' from 'kibwa kibwa') from dual;
-- 'kibwa kibwa'라는 문자열에서 첫 번째 'k'를 제거한다.
TRIM('K'FRO
-----------
ibwa kibwa
select lower('I am Kibwa'), upper('I am Kibwa'), initcap('I am Kibwa') from dual;
LOWER('IAM UPPER('IAM INITCAP('I
---------- ---------- ----------
i am kibwa I AM KIBWA I Am Kibwa
select replace('i am a kibwa', 'a', 'x') from dual;
REPLACE('IAM
------------
i xm x kibwx
select 30, lpad(30, 5, '0') a from sys.dual;
-- 전체크기 5만큼 30이라는 데이터 왼쪽에서부터 0을 채워나간다.
-- 전체 크키근 5이고 30은 이미 2자리를 차지 했으며로 0은 3개만 들어가면 된다.
30 A
---------- -----
30 00030
instr(문자열, '검색할 문자', 시작 지점, N번째로 검색 되는 단어) : 찾는 문자의 위치를 반환 한다.
instr 예제
select instr('kibwa_kibwa education center', 'k', 1, 2) from dual;
-- 'kibwa_kibwa education center' 문자열의 1번째 부터 시작하여 2번째로 검색되는 'k'의 위치 값을 반환하라.
INSTR('KIBWA_KIBWAEDUCATIONCENTER','K',1,2)
-------------------------------------------
7
시작지점에 마이너스(-)를 붙이면 오른쪽에서 부터 검색이 가능하다.
select instr('kibwa_kibwa education center', 'k', -1, 2) from dual;
-- 'kibwa_kibwa education center' 문자열의 오른쪽 1번째 부터 시작하여 2번째로 검색되는 'k'의 위치 값을 반환하라.
INSTR('KIBWA_KIBWAEDUCATIONCENTER','K',-1,2)
--------------------------------------------
1
🍀