728x90
[내장 함수] 숫자형 함수
@2024.05.02
숫자형 함수
수
- ABS(수)
- 절댓값 출력
- SIGN(X)
- X가 음수 면 -1, X가 0이면 0, X가 양수면 1을 출력
SELECT ABS(-5); -- 5
SELECT SIGN(10); -- 1
SELECT SIGN(-5); -- -1
SELECT SIGN(-5); -- -1
나눗셈(MOD)
- MOD(분자, 분모)
- 분자를 분모로 나눈 나머지 = % 연산자
SELECT MOD(10, 3); -- 1
SELECT MOD(-10, 3); -- -1
소수
- CEILING(수)
- 숫자를 올림 하여, 가장 가까운 큰 정수 반환
- FLOOR(수)
- 숫자를 내림하여, 가장 가까운 작은 정수 반환
- ROUND(수, 자릿수)
- 숫자를 소수점 이하 자릿수에서 반올림하여 정수 반환
- 자릿수는 양수, 0, 음수를 가질 수 있다.
- TRUNCATE(수, 자릿수)
- 숫자를 소수점 이하 자릿수에서 버림 하여 정수 반환
1 2 3 . 4 5 6
자리수 [-3] [-2] [-1] . [0] [1] [2]
-- CEILING
SELECT CEILING(10.45); -- 11
SELECT CEILING(-5.1); -- -5
-- FLOOR
SELECT FLOOR(10.45); -- 10
SELECT FLOOR(-5.1); -- -6
-- ROUND
SELECT ROUND(10.45, 1); -- 10.5
SELECT ROUND(-5.678, 2); -- -5.68
-- TRUNCATE
SELECT TRUNCATE(10.789, 2); -- 10.78
SELECT TRUNCATE(-5.678, 1); -- -5.6
최대/최솟 값
- GREATEST(수 1, 수 2. …. )
- 주어진 수 중 가장 큰 수 반환
- LEAST(수 1, 수 2. …. )
- 주어진 수 중에서 제일 작은 수 반환
SELECT GREATEST(10, 20, 30, 40); -- 40
SELECT LEAST(10, 20, 30, 40); -- 10
진수
- BIN(수)
- 2진수
- HEX(수)
- 16진수
- OCT(수)
- 8진수
SELECT BIN(10); -- '1010'
SELECT HEX(10); -- 'A'
SELECT OCT(10); -- '12'
고급 함수
- SQRT(수)
- 루트
- POW(X, Y)
- X의 Y 제곱 승 반환
- EXP(수)
- E의 거듭제곱
- LOG(수)
- 자연 로그
SELECT SQRT(16); -- 4
SELECT POW(2, 3); -- 8
SELECT EXP(1); -- 2.718281828459045 E를 1승한 값
SELECT LOG(10); -- 2.302585092994046 10의 자연 로그 값
삼각 함수
- SIN(수)
- 사인 함수
- COS(수)
- 코사인 함수
- TAN(수)
- 탄젠트 함수
SELECT SIN(π/2); -- 1
SELECT COS(π); -- -1
SELECT TAN(π/4); -- 1
랜덤 값
- RAND()
- 0 ~ 1 사이의 임의의 실수 값 반환
- 값의 범위를 변경할 경우 ROUND가 아닌 FLOOR 사용
- ROUND 함수는 소수점 이하를 반올림하기 때문에 0부터 100사이의 값이 생성되며 원하는 값이 생성되지 않는다.
- FLOOR 함수를 사용하여 소수점 이하를 버리고 해당 값의 정수 부분을 얻으므로써 0부터 99까지 값이 생성되고 여기에 1을 더하여 1부터 100까지의 정수를 얻을 수 있다.
SELECT RAND() * 100; -- 0 ~ 99까지의 임의의 실수 값 출력
SELECT FLOOR(RAND() * 100) +1; -- 0부터 100까지의 랜덤한 정수 값 출력
SELECT ROUND(RAND()*100,0); -- 0 ~ 100까지의 랜덤한 정수 값 출력
각도 값
- DEGREES()
- 라디안을 각도 값으로 변환
- RADIANS()
- 각도 값을 라디안으로 변환
SELECT DEGREES(PI()); -- 180
SELECT RADIANS(180); -- 3.14159265358979
728x90
'MYSQL' 카테고리의 다른 글
[내장 함수] 집계 함수 (0) | 2024.05.05 |
---|---|
[내장 함수] 날짜형 함수 (0) | 2024.05.05 |
[내장 함수] 문자형 함수 (0) | 2024.05.05 |
SELECT절 (0) | 2024.05.05 |
MySQL DB/사용자 생성 및 사용자 권한 설정 (0) | 2024.05.04 |