MYSQL

[MySQL] 숫자형 함수 정리

_알파카 2024. 8. 13. 19:44
728x90

MySQL에서 숫자를 처리할 수 있는 다양한 함수에 대해서 알아보자. 

-- ABS : 절댓값 반환
SELECT ABS(-3);
-- 3

 

-- CEIL : 올림
SELECT CEIL(10);
SELECT CEIL(10.1);
SELECT CEIL(-10.1);
-- 10 /  10.1 / -10

 

-- FLOOR : 버림
SELECT FLOOR(10);
SELECT FLOOR(10.9);
SELECT FLOOR(-10.9);
-- 10 / 10 / -11

 

-- ROUND(A, B) : A를 소수점 B자리까지 반올림한다
SELECT ROUND(23.5);
SELECT ROUND(123.453836935476, 2);
-- 24 / 123.45

SELECT ROUND(12,-1) -- 10
SELECT ROUND(24,-1) -- 20
SELECT ROUND(36,-1) -- 40
SELECT ROUND(48,-1) -- 50

 

-- TRUNCATE(A, B) : A를 소수점 B째 자리까지 남기고 버림
SELECT TRUNCATE(123.4535136, 2);
-- 123.45

SELECT TRUNCATE(3456.1234567 ,-2);
-- 3400

 

-- POW : X의 Y 승
SELECT POW(2, 4);
-- 16

 

-- SQRT : 제곱근(루트)
SELECT SQRT(8);
-- 2.8284271247461903

 

-- MOD(A, B) : A를 B로 나눈 나머지
SELECT MOD(21, 5);
-- 1

 

-- RAND()*100 : 0~100까지의 난수 랜덤 리턴
SELECT FLOOR(RAND()*100);
-- 0~100사이의 값 중 정수값을 랜덤 리턴 (FLOOR로 소수점 버림)

 

-- SIGN : 0보다 크면 1, 0이면 0, 0보다 작으면 -1
SELECT SIGN(2311);
SELECT SIGN(0);
SELECT SIGN(-3168316);
-- 1 / 0 / -1

 

-- GREATEST : 가장 큰 수 / LEAST : 가장 작은 수
SELECT GREATEST(1, 7, 103, 5);
SELECT LEAST(1, 7, 103, 5);

-- 103 / 1
728x90