본문 바로가기
Programming/SQL

[MySQL] 수학함수 다루기

by 코딩하는 금융인 2022. 1. 17.

안녕하세요.

오늘은 MySQL에서 유용하게 쓰이는 수학함수에 대해 알아보는 시간을 가져보겠습니다.

 

 MySQL 수학함수 종류

데이터를 다루다보면, 숫자 타입의 데이터를 다루는 케이스가 상당히 많이 나옵니다. SQL에서 간단한 수학함수를 이용하면 쉽게 숫자 타입의 데이터를 원하는 대로 바꿀 수 있습니다. 아래에 자주 사용하는 수학함수에 대해 알려드리겠습니다.

 

▣ 오름 & 내림

FLOOR(숫자): 숫자 내림
CEILING(숫자): 숫자 올림
ROUND(숫자) : 숫자 반올림
FORMAT(숫자, 소수점 자리수): 소수점 자리수까지만 잘라 리턴

# 예시

SELECT FLOOR(10.95), CEILING(11.55), ROUND(11.7), FORMAT(1405.3444,2);

###결과
(10, 11, 12, 1,405.34)

 

▣ 진수 표기

BIN(숫자): 숫자를 2진수로 변환
OCT(숫자): 숫자를 8진수로 변환
HEX(숫자): 숫자를 16진수로 변환
CONV(숫자, 기존진법, 바꿀진법): 숫자를 기존 진법에서 바꿀 진법으로 계산

# 예시

SELECT BIN(16), OCT(16), HEX(16), CONV(11, 10, 2);

### 결과 ###
(10000, 20, 10, 1011)

 

▣ 삼각함수

SIN(숫자): 사인값 반환
COS(숫자): 코사인값 반환
TAN(숫자): 탄젠트값 반환
# 앞에 A를 붙이면 역함수 값 반환

# 예시

SELECT SIN(PI()/2), COS(PI()), TAN(PI()/4); # PI(): 파이값 반환

### 결과 ###
(1, -1, 0.9999999999999999)
반응형

▣ 지수, 로그함수

SQRT(숫자): 숫자의 제곱근 중 양수값 반환
POW(숫자1, 숫자2): 숫자1은 밑수로, 숫자2는 지수로 전달하여 계산 
EXP(숫자): 인수로 지수를 받아, e의 거듭제곱 반환
LOG(숫자): 숫자의 자연로그 값 계산

# 예시

SELECT SQRT(4), POW(2, 3), EXP(3), LOG(3);

### 결과 ###
(2, 8, 20.085536923187668, 1.0986122886681098)

 

기타 함수

SIGN(숫자): 숫자가 양수이면 1, 음수면 -1, 0이면 0 반환
TRUNCATE(숫자1, 숫자2): 숫자1을 소숫점 기준으로 숫자2 이외의 값 버림
RAND(): 0~1 사이의 실수 반환
MOD(숫자1, 숫자2): 숫자1에서 숫자2를 나눈 나머지 값 반환
ABS(숫자): 절대값 반환
반응형

댓글