Database/Mysql

[MySQL][SQL] 2-2. DML: Inner Function (Single Row)

noahkim_ 2026. 3. 4. 00:46

1. Number

함수 설명 예시 결과
ABS(n) 절대값 반환 ABS(-5) 5
CEILING(n) 올림 CEILING(3.2) 4
FLOOR(n) 내림 FLOOR(3.9) 3
ROUND(n,i) 반올림 (소수 i자리) ROUND(3.456,2) 3.46
TRUNCATE(n,i) 버림 (소수 i자리) TRUNCATE(3.456,2) 3.45
GREATEST(n1,n2,…) 가장 큰 값 GREATEST(3,7,5) 7
LEAST(n1,n2,…) 가장 작은 값 LEAST(3,7,5) 3
POW(x,y) x의 y제곱 POW(2,3) 8
MOD(n,m) 나머지 MOD(10,3) 1

 

2. String

함수 설명 예시 결과
ASCII(s) 첫 글자의 ASCII 코드 반환 ASCII('A') 65
CONCAT(s1,s2,…) 문자열 연결 CONCAT('Hello',' ','World') Hello World
INSTR(s,sub) 문자열 내 위치 반환 INSTR('Hello','l') 3
SUBSTRING(s,idx,len) 부분 문자열 추출 SUBSTRING('Hello',1,2) He
LEFT(s,len) 왼쪽 n글자 LEFT('Hello',2) He
RIGHT(s,len) 오른쪽 n글자 RIGHT('Hello',2) lo
MID(s,idx,len) SUBSTRING과 동일 MID('Hello',2,3) ell
REPLACE(s,old,new) 문자열 치환 REPLACE('Hello','l','x') Hexxo
INSERT(s,pos,len,new) 특정 위치 치환 INSERT('Hello',2,2,'xx') Hxxlo
TRIM(s) 양쪽 공백 제거 TRIM(' Hello ') Hello
LTRIM(s) 왼쪽 공백 제거 LTRIM(' Hello') Hello
RTRIM(s) 오른쪽 공백 제거 RTRIM('Hello ') Hello
LENGTH(s) 바이트 길이 반환 LENGTH('안녕하세요') 15
CHAR_LENGTH(s) 문자 개수 반환 CHAR_LENGTH('안녕하세요') 5
UPPER(s) 대문자 변환 UPPER('hello') HELLO
LOWER(s) 소문자 변환 LOWER('HELLO') hello
REVERSE(s) 문자열 뒤집기 REVERSE('abc') cba

 

3. Date

함수 설명 예시 결과
YEAR(date) 연도 반환 YEAR('2024-04-14') 2024
MONTH(date) 월 반환 MONTH('2024-04-14') 4
MONTHNAME(date) 월 이름 반환 MONTHNAME('2024-04-14') April
DAYNAME(date) 요일 이름 반환 DAYNAME('2024-04-14') Sunday
DAYOFWEEK(date) 요일 번호 반환 (1=일요일) DAYOFWEEK('2024-04-14') 1
WEEKDAY(date) 요일 번호 반환 (0=월요일) WEEKDAY('2024-04-14') 6
DATE_FORMAT(date,fmt) 날짜 형식 변환 DATE_FORMAT('2024-04-14','%W, %D %M %Y')
Sunday, 14th April 2024
NOW() 현재 날짜+시간 (트랜잭션 기준) NOW() 현재 datetime
CURRENT_TIMESTAMP() 현재 날짜+시간 (NOW와 동일) CURRENT_TIMESTAMP() 현재 datetime
SYSDATE() 실제 현재 시간 SYSDATE() 현재 datetime
CURRENT_DATE() 현재 날짜 CURRENT_DATE() 2024-04-14
CURRENT_TIME() 현재 시간 CURRENT_TIME() 22:55:38
DATE_ADD(date, interval n unit) 날짜 더하기 DATE_ADD(CURRENT_DATE(), INTERVAL 10 DAY) +10일
DATE_SUB(date, interval n unit) 날짜 빼기 DATE_SUB(CURRENT_DATE(), INTERVAL 5 DAY) -5일
DATEDIFF 날짜 빼기 (둘 날짜 사이 일) DATEDIFF(date1, date2) 29
TO_DAYS(date) 기준일(0000-01-01)부터 날짜수 TO_DAYS('2024-04-14') 정수값
QUARTER 날짜의 분기 QUARTER('2024-04-14') 2

 

DATE_FORMAT) 포맷 문자

더보기
포맷 설명 예시 결과
%Y 4자리 연도 2024
%y 2자리 연도 24
%M 월 이름 April
%b 월 이름 축약 Apr
%m 월 (01~12) 4
%c 월 (1~12) 4
%D 일 + 서수 14th
%d 일 (01~31) 14
%e 일 (1~31) 14
%W 요일 이름 Sunday
%a 요일 축약 Sun
%w 요일 번호 (0=일요일) 0
%H 시간 (00~23) 22
%k 시간 (0~23) 22
%h 시간 (01~12) 10
%I 시간 (01~12) 10
%l 시간 (1~12) 10
%i 분 (00~59) 55
%S 초 (00~59) 38
%s 초 (00~59) 38
%p AM / PM PM
%r 12시간 시:분:초 오후 10:55:38
%T 24시간 시:분:초 22:55:38
%j 1년 중 날짜 (001~366) 105
%U 주차 (일요일 시작) 15
%u 주차 (월요일 시작) 15
%% % 문자 출력 %