[Database] 기타 숫자 함수

1. abs ceil floor


abs는 실수를 자연수로 출력해주는 함수이다.

select abs(-312) from dual;

위 sql문을 실행하면 음수가 사라지고 312가 출력된다.
ceil은 무조건 올림을 하는 함수이다.

select ceil(10.1234) from dual;

10.1234에서 올림한 11이 출력되는 것을 확인할 수 있다. 반대로 floor는 무조건 버림하는 함수이다.

select floor(10.9876) from dual;

ceil과 반대로 10.9876에 무조건 버림한 10이 출력된다.
round 함수가 있는데 반올림을 하는 함수이다.

select round(10.1234) from dual;

여기선 10이 출력된다. 반면 10.9876을 넣으면 11이 출력된다. ceil, floor, round는 통계 쿼리를 짤 때 자주 쓰이는 함수이다.
이전에 했던 함수들 포함해서 length, substr, ceil, floor, round는 자주 쓰이므로 꼭 외워야한다.

2. mod


mod는 입력된 두 수를 나눈 나머지 값을 반환해주는 함수이다. 연산자 %와 같은 기능을 한다.

select mod(5, 3) from dual;

5를 3으로 나눈 나머지가 2이기 때문에 2가 출력된다. mod도 은근 쓰일 때가 있다.

3. power sqrt


power는 두 수의 제곱을 시켜주는 함수이다.

select power(2, 3) from dual;

위 sql문을 실행하면 2의 3제곱인 8이 결과로 출력된다.
반대로 함수 sqrt는 제곱근을 구해준다.

select sqrt(16) from dual;

저 sql문을 실행하면 16의 제곱근 4가 출력된다.

4. sign trunc


sign는 양수면 1, 음수면 -1로 출력해서 양수인지 음수인지 알려주는 함수이다.

select sign(365) from dual;

위 sql문을 실행하면 양수이므로 1이 출력된다. 365대신 -13을 넣으면 -1이 출력된다. 그럼 0을 넣으면 어떻게 될까? 0을 넣으면 양수도 음수도 아니기때문에 0이 출력된다.
trune는 소수점을 제거하는 함수이다.

select trunc(10.1234) from dual;

10.1234의 소수점 숫자가 제거된 10이 출력된다. 그러나 아래 처럼 특정 숫자를 지정하면 그 숫자 아래만큼 소수점 숫자가 출력된다.

select trunc(10.1234, 2) from dual;

소수점 두자리 숫자까지 나오는 10.12이 출력되는 것을 볼 수 있다. trunc는 종종 쓰인다.






© 2021.11. by 21thkafka

Powered by 21thkafka