--------------------------------------------------------------------------------
-- 숫자형 함수
--● ROUND() 반올림 처리해주는 함수
SELECT 48.678 "1"
, ROUND(48.678,2) "2"
--- 소수점 둘째자리까지 표현
, ROUND(48.674,2) "3"
, ROUND(48.678,1) "4"
, ROUND(48.678,0) "5"
, ROUND(48.678) "6"
, ROUND(48.678,-1) "7" -- 10의 자리까지 유효한 표현
, ROUND(48.678,-2) "8"
, ROUND(48.678,-3) "9"
FROM DUAL;
--==>>48.678 48.68 48.67 48.7 49 49 50 0 0
-- ● TRUNC() 절삭을 처리해주는 함수
SELECT 48.678 "1"
, TRUNC(48.678, 2) "2" -- 소수점 이하 둘째자리까지 표현(세째 자리에서 절삭)
, TRUNC(48.674, 2) "3"
, TRUNC(48.678,1) "4"
, TRUNC(48.678,0) "5"
, TRUNC(48.678) "6"
, TRUNC(48.678,-1) "7" -- 10의 자리까지 유효한 표현
, TRUNC(48.678,-2) "8"
, TRUNC(48.678,-3) "9"
FROM DUAL;
--==>48.678 48.67 48.67 48.6 48 48 40 0 0
-- ● MOD() 나머지를 반환하는 함수
SELECT MOD(5,2) "확인"
FROM DUAL;
--==>> 1
--> 5를 2로 나눈 나머지 결과값 반환
-- ● POWER() 제곱의 결과를 반환하는 함수
SELECT POWER(5,3) "확인"
FROM DUAL;
--===>> 125
--> 5의 3승을 결과값으로 반환
-- ● SQRT() 루트 결과값을 반환하는 함수
SELECT SQRT(2) "확인"
FROM DUAL;
--==>> 1.41421356237309504880168872420969807857
--> 루트 2에 대한 결과값 반환
-- ● LOG() 로그 함수
-- ( ※ 오라클은 상용로그만 지원하는 반면, MSSQL은 상용로그 자연로그 모두 지원한다.)
SELECT LOG(10,100) "확인1", LOG(10,20) "확인2"
FROM DUAL;
--===>>2 1.30102999566398119521373889472449302677
-- ● 삼각함수
-- 싸인, 코싸인, 탄젠트 결과값을 반환한다.
SELECT SIN(1), COS(1), TAN(1)
FROM DUAL;
--==>>0.8414709848078965066525023216302989996233 0.5403023058681397174009366074429766037354 1.557407724654902230506974807458360173008
-- ● 삼각함수의 역함수(범위 :-1 ~ 1)
-- 어싸인, 어코싸인, 어탄젠트 결과값을 반환한다.
SELECT ASIN(0.5), ACOS(0.5), ATAN(0.5)
FROM DUAL;
/*0.52359877559829887307710723054658381405
1.04719755119659774615421446109316762805
0.4636476090008061162142562314612144020295*/
--● SIGN() 서명, 부호, 특징
--> 연산 결과값이 양수이면 1 , 0이면 0, 음수이면 -1 을 반환한다.
SELECT SIGN(5-2) "1", SIGN(5-5) "2", SIGN(5-7) "3"
FROM DUAL;
--==>>1 0 -1
--> 매출이나 수지와 관련하여 적자 및 흑자의 개념을 나타낼 때 주로 사용한다.
--●ASCII(), CHR() → 서로 상응하는 개념의 함수
SELECT ASCII('A'), CHR(65)
FROM DUAL;
--===>>65 A
-- ASCII() 는 매개변수의 아스키코드를, CHR() 는 아스키코드값을 문자로 반환한다.
📚Study Note/ORACLE