Myslq 함수 정리
▶ ABS(숫자) : 절대값 출력.
select abs(123);
▶ CEILING(숫자) : 값보다 큰 정수 중 가장 작은 수.
--양수일 경우는 소숫점 자리에서 무조건 반올림(4.0과 같은 소숫점 자리 0 값은 제외)
--음수일 경우는 소숫점 자리를 무조건 버림
select ceiling(4.0);
select ceiling(4.1);
select ceiling(4.9);
▶ FLOOR(숫자) : 값보다 작은 정수 중 가장 큰 수[실수를 무조건 버림(음수일 경우는 제외)].
--음수일 경우는 [.0/.00/.000/...] 을 제외하고 무조건 소숫점을 버리고 반내림(?)
select floor(4.0);
select floor(4.1);
select floor(4.9);
select floor(-4.6789);
▶ ROUND(숫자,자릿수) : 숫자를 소수점 이하 자릿수에서 반올림.(자릿수는 양수,0,음수를 갖을 수 있다.)
--자릿수를 생략하면 소숫점이 5 이상일 때 반올림/자릿수를 지정하면 지정한 자리수에서 반올림
select round(4.5);
select round(4.55);
select round(-4.5);
select round(4.556);
select round(4.556,0);
select round(4.556,1);
select round(4.556,2);
select round(45.556,-1);
select round(455.556,-2);
▶ TRUNCATE(숫자,자릿수) : 숫자를 소수점 이하 자릿수에서 버림.
==>만일 자릿수를 소숫점 이전으로 정하면 소숫점이하는 버리고 나머지 값은 0 값으로 처리
/ 예) truncate(9999,-3) --> 9000
==>또는 자릿수를 소숫점이하로 정하며, 해당숫자가 자릿수보다 소숫점이 모자랄경우 0 값으로 대치
/ 예) truncate(999,3) --> 999.000
--반드시 자릿수를 명시해주어야 한다
--음수일 경우는 해당자릿수에서 소숫점을 버리면서 무조건 반올림
==>(자릿수 숫자에서 이후 숫자가 0 일 경우는 제외 / 예)-4.0,0/-400,-2/-4.1230,4)
==>음수 역시 자릿수를 소숫점이하로 정하며, 해당숫자가 자릿수보다 소숫점이 모자랄경우 0 값으로 대치
==>또한 자릿수를 소숫점 이전으로 정하면 소숫점이하는 버리고 나머지 값은 역시 0 값으로 처리
▶ POW(X,Y) 또는 POWER(X,Y) : X의 Y승
--소숫점이 있는 경우도 실행, 단 음수는 양수로 승처리
select pow(-2.5,2);
select pow(1.5,2);
▶ MOD (분자, 분모) : 분자를 분모로 나눈 나머지를 구한다.(연산자 %와 같음)
select mod(12,5); ==> 2
select 12%5; ==> 2
▶ GREATEST(숫자1,숫자2,숫자3...) : 주어진 수 중 제일 큰 수 리턴.
select greatest(100,101,90);
▶ LEAST(숫자1,숫자2,숫자3...) : 주어진 수 중 제일 작은 수 리턴.
select least(100,101,90);
▶ INTERVAL(a,b,c,d.....) : a(숫자)의 위치 반환
--두 번째 이후는 오름차순 정렬이 되어야 함
예) INTERVAL(5,2,4,6,8) ==> 2
5는 4와 6사이에 존재, 4~6사이의 위치가 앞에서 2번째
select interval(4,1,2,3,5,6);
출처 : http://piccom.egloos.com/2866254