logo

[MySQL] 기본 함수

 

수학 함수

 

절대값 구하기: ABS

  • X의 절대값을 반환합니다.
  • 예: ABS(-5)5를 반환합니다.
 

올림: CEILING / CEIL

  • 주어진 숫자 X보다 크거나 같은 가장 작은 정수를 반환합니다.
  • 예: CEILING(4.3)5를 반환합니다.
 

내림: FLOOR

  • 주어진 숫자 X보다 작거나 같은 가장 큰 정수를 반환합니다.
  • 예: FLOOR(4.7)4를 반환합니다.
 

나머지: MOD

  • XY로 나눈 나머지를 반환합니다.
  • 예: MOD(10, 3)1을 반환합니다.
 

제곱: POW / POWER

  • XY제곱 값을 반환합니다.
  • 예: 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' 문자열을 암호화한 값을 반환합니다. (이 함수는 일부 환경에서 제한적으로 사용될 수 있으며, 대체 함수나 암호화 방식을 고려해야 할 수 있습니다.)
Previous
가상 테이블