[MySQL] 기본 함수
수학 함수
절대값 구하기: ABS
X
의 절대값을 반환합니다.
- 예:
ABS(-5)
는 5
를 반환합니다.
올림: CEILING / CEIL
- 주어진 숫자
X
보다 크거나 같은 가장 작은 정수를 반환합니다.
- 예:
CEILING(4.3)
는 5
를 반환합니다.
내림: FLOOR
- 주어진 숫자
X
보다 작거나 같은 가장 큰 정수를 반환합니다.
- 예:
FLOOR(4.7)
는 4
를 반환합니다.
나머지: MOD
X
를 Y
로 나눈 나머지를 반환합니다.
- 예:
MOD(10, 3)
는 1
을 반환합니다.
제곱: POW / POWER
X
의 Y
제곱 값을 반환합니다.
- 예:
POW(2, 3)
또는 POWER(2, 3)
는 8
을 반환합니다.
반올림: ROUND
- 숫자
X
를 지정된 소수점 D
에서 반올림된 값으로 반환합니다. D
가 생략되면 정수로 반올림합니다.
- 예:
ROUND(4.656, 2)
는 4.66
을 반환합니다.
제곱근: SQRT
X
의 제곱근을 반환합니다.
- 예:
SQRT(16)
는 4
를 반환합니다.
부호: SIGN
- 숫자
X
의 부호를 반환합니다. X
가 양수이면 1
, 0
이면 0
, 음수이면 -1
을 반환합니다.
- 예:
SIGN(-10)
은 -1
을 반환합니다.
조건 함수
조건에 따라 선택: IF
- 조건이 참이면 첫 번째 값을, 그렇지 않으면 두 번째 값을 반환합니다.
- 예:
IF(1<2, 'True', 'False')
는 'True'
를 반환합니다.
NULL 체크: IFNULL
- 첫 번째 인자가 NULL이 아니면 첫 번째 인자를, NULL이면 두 번째 인자를 반환합니다.
- 예:
IFNULL(NULL, 'Default')
는 'Default'
를 반환합니다.
값 비교 후 NULL 반환: NULLIF
- 두 인자가 같으면 NULL을, 다르면 첫 번째 인자를 반환합니다.
- 예:
NULLIF(1, 1)
은 NULL
을 반환합니다.
NULL이 아닌 첫 번째 값 선택: COALESCE
- 주어진 인자 목록에서 NULL이 아닌 첫 번째 값을 반환합니다.
- 예:
COALESCE(NULL, NULL, 3, 4)
는 3
을 반환합니다.
형 변환 함수
데이터 타입 변환: CAST
- 명시된 데이터 타입으로 값을 변환합니다.
- 예:
CAST('2023-01-01' AS DATE)
는 문자열 '2023-01-01'
을 DATE 타입으로 변환합니다.
데이터 타입 또는 문자 집합 변환: CONVERT
- 첫 번째 인자를 두 번째 인자로 지정된 데이터 타입 또는 문자 집합으로 변환합니다.
- 예:
CONVERT('text', BINARY)
는 문자열 'text'
를 이진 문자열로 변환합니다.
시스템 함수
데이터베이스 이름 반환: DATABASE()
- 현재 선택된 데이터베이스의 이름을 반환합니다.
- 예:
SELECT DATABASE();
는 현재 연결된 데이터베이스의 이름을 반환합니다.
사용자 이름 반환: USER()
- 현재 데이터베이스 세션의 사용자 이름과 호스트 이름을 반환합니다.
- 예:
SELECT USER();
는 현재 사용자의 이름과 호스트를 반환합니다.
MySQL 서버 버전 반환: VERSION()
- 실행 중인 MySQL 서버의 버전을 반환합니다.
- 예:
SELECT VERSION();
는 MySQL 서버의 버전 정보를 반환합니다.
최근 AUTO_INCREMENT 값 반환: LAST_INSERT_ID()
- 마지막
INSERT
연산에서 생성된 AUTO_INCREMENT
값 반환합니다.
- 예:
INSERT INTO table_name (column1) VALUES (value1); SELECT LAST_INSERT_ID();
는 삽입된 마지막 행의 AUTO_INCREMENT
값을 반환합니다.
기타 함수
10진수를 2진수로 변환: BIN()
- 주어진 10진수 값을 2진수 문자열로 변환합니다.
- 예:
SELECT BIN(12);
는 1100
을 반환합니다.
숫자 또는 문자열을 16진수로 변환: HEX()
- 주어진 숫자 또는 문자열을 16진수 값으로 변환합니다.
- 예:
SELECT HEX(255);
는 FF
를, SELECT HEX('abc');
는 문자열 abc
의 16진수 값을 반환합니다.
문자열의 MD5 해시 반환: MD5()
- 주어진 문자열의 MD5 해시 값을 반환합니다.
- 예:
SELECT MD5('password');
는 'password'
문자열의 MD5 해시 값을 반환합니다.
난수 반환: RAND()
- 0과 1 사이의 난수를 반환합니다.
- 예:
SELECT RAND();
는 0과 1 사이의 난수를 반환합니다.
문자열 암호화: ENCRYPT()
- 주어진 문자열을 암호화하여 반환합니다. (MySQL의 특정 버전에서만 사용 가능하며, 사용 가능한 암호화 방법은 MySQL 버전에 따라 다를 수 있습니다.)
- 예:
SELECT ENCRYPT('message');
는 'message'
문자열을 암호화한 값을 반환합니다. (이 함수는 일부 환경에서 제한적으로 사용될 수 있으며, 대체 함수나 암호화 방식을 고려해야 할 수 있습니다.)