Class04(함수)
2023. 01. 31. 수업내용 정리
함수
일반 함수
수학 함수
ABS(x)
:x
의 절대값을 반환한다.MOD(x, y)
:x
를y
로 나눈 나머지이다.x % y
혹은x MOD y
와 같다.POW(x, y)
:x
의y
제곱을 반환한다.SQRT(x)
:x
의 제곱근을 반환한다.CEIL(x)
혹은CEILING(x)
:x
를 정수부까지 올림하여 반환한다.FLOOR(x)
:x
를 정수부까지 내림하여 반환한다.ROUND(x, y)
:x
를 소수y
번째까지 반올림하여 반환한다. 단,y
생략시 정수부까지 반올림하여 반환한다.TRUNCATE(x, y)
:x
의 소수y
번째 미만인 소수를 버리고 반환한다.RAND(x)
: 시드 값x
를 활용하여 0이상 1미만의 랜덤한 실수를 반환한다. 시드 값x
가 같다면 반환되는 값은 항상 일정하다. 랜덤한 시드를 사용하기 위해서는x
를 생략한다.
문자 함수
ASCII(x)
: 문자x
의 아스키코드를 반환한다.CHAR(x)
: 아스키코드x
의 문자를 반환한다.BIT_LENGTH(x)
: 문자열x
의 내용에 대한 비트수를 반환한다.LENGTH(x)
: 문자열x
의 내용에 대한 바이트수를 반환한다.UTF8MB3
인코딩 하에서 한글 한자는3 Byte
이다.CHAR_LENGTH(x)
: 문자열x
의 길이(문자 개수)를 반환한다.CONCAT(x1, x2,...)
: 주어진 값x#
를 모두 이어 붙인 문자열로 반환한다.CONCAT_WS(x, y1, y2,...)
: 주어진y#
을 모두 이어 붙인 문자열로 반환하는데, 구분자로x
를 이용한다.INSTR(x, y)
: 문자열x
가 문자열y
를 찾아 그 자리수를 반환하고 포함하고 있지 않다면 0을 반환한다.FORMAT(x, y)
: 숫자x
가 가지는 소수점y
자리 까지만 표시를 하고, 천 단위를 콤마로 구분한 문자열을 반환한다.LPAD(x, y, z)
: 문자열x
가 가지는 내용의 길이가y
보다 짧을 떄 길이가y
가 될 수 있도록 문자열의 왼쪽(앞쪽)에 문자열z
를 대입한 문자열을 반환한다. 단, 문자열x
의 길이가y
의 길이보다 길다면, 왼쪽에서부터y
자 만큼 잘라서 반환한다.RPAD(x, y, z)
: 문자열x
가 가지는 내용의 길이가y
보다 짧을 떄 길이가y
가 될 수 있도록 문자열의 오른쪽(뒤쪽)에 문자열z
를 대입한 문자열을 반환한다. 단, 문자열x
의 길이가y
의 길이보다 길다면, 왼쪽에서부터y
자 만큼 잘라서 반환한다.LTRIM(x)
: 문자열x
의 선행 공백을 모두 제거하여 반환한다.RTRIM(x)
: 문자열x
의 후행 공백을 모두 제거하여 반환한다.TRIM(x)
: 문자열x
의 선/후행 공백을 모두 제거하여 반환한다.LEFT(x, y)
: 문자열x
의 선행하는 문자y
자를 반환한다.RIGHT(x, y)
: 문자열x
의 후행하는 문자y
자를 반환한다.MID(x, y, z)
혹은SUBSTRING(x, y, z)
혹은SUBSTR(x, y, z)
: 문자열x
가 가지는 문자 중y
번째 문자를 포함, 후행하는z
개의 문자열을 반환한다.REPLACE(x, y, z)
:y
가 음수일 때x
의 뒷자리-y
자에 대한 문자열z
개를 반환한다.
REPLACE(x, y, z)
: 문자열x
가 가진 내용 중y
를 찾아z
로 치환한 문자열을 반환한다.LCASE(x)
혹은LOWER(x)
: 문자열x
를 소문자화하여 반환한다.UCASE(x)
혹은UPPER(x)
: 문자열x
를 대문자화하여 반환한다.REPEAT(x, y)
: 문자열x
를y
번 반복하여 이어 붙인 문자열을 반환한다.REVERSE(x)
: 문자열x
를 뒤집어 반환한다.
날짜 및 시간
CURDATE()
혹은CURRENT_DATE()
: 현재 날짜를 반환한다.CURTIME()
혹은CURRENT_TIME()
: 현재 시간를 반환한다.CURRENT_TIMESTAMP(x)
혹은NOW(x)
혹은SYSDATE(x)
: 현재 일시를 반환한다.x
값이 생략되지 않을 경우x
자 만큼 밀리초를 포함한다.x
의 최대 값은6
.YEAR(x)
: 일시x
의 년도를 반환한다.MONTH(x)
: 일시x
의 월을 반환한다.DAYOFMONTH(x)
: 일시x
의 일(日)을 반환한다.HOUR(x)
: 일시x
의 시간을 반환한다.MINUTE(x)
: 일시x
의 분을 반환한다.SECOND(x)
: 일시x
의 초를 반환한다.MICROSECOND(x)
: 일시x
의 밀리초를 반환한다.DATE(x)
: 일시x
의 날짜를 반환한다.TIME(x)
: 일시x
의 시간을 반환한다.DATE_ADD(x, INTERVAL y z)
: 일시x
에z
주기인y
만큼의 시간을 더한다.(미래로) 주기는YEAR
,QUATER
,MONTH
,WEEK
,DAY
,HOUR
,MINUTE
,SECOND
등을 사용할 수 있다.DATE_SUB(x, INTERVAL y z)
: 일시x
에z
주기인y
만큼의 시간을 뺀다.(과거로)DATEDIFF(x, y)
: 날짜x
에서y
를 뺀 날짜 형식을 반환한다.TIMEDIFF(x, y)
: 날짜x
에서y
를 뺀 시간 형식을 반환한다.TIMESTAMPDIFF(x, y, z)
: 날짜z
에서y
를 뺀 값을x
주기로 표현한다.
논리 함수
IF(x, t, f)
: 조건x
가 참일 때t
를, 거짓일 때f
값을 반환한다.IFNULL(x, a)
:x
값이NULL
이라면a
를, 아니라면x
값을 그대로 반환한다.
통계 함수
COUNT(x)
: 선택되는 열x
의 리터럴에 해당하는 레코드의 개수를 반환한다.AVG(x)
: 선택되는 열x
에 해당하는 레코드 값의 평균을 반환한다.SUM(x)
: 선택되는 열x
에 해당하는 레코드 값의 합을 반환한다.MIN(x)
: 선택되는 열x
에 해당하는 레코드 값 중 가장 작은 값을 반환한다.MAX(x)
: 선택되는 열x
에 해당하는 레코드 값 중 가장 큰 값을 반환한다.
댓글남기기