MySQL 공부 내용을 깃허브 TIL 저장소에 정리를 해두었습니다. 이를 수행하고자 하는 작업을 기준으로 문법들을 다시 정리를 해보고자합니다. 이번 게시글에서는 데이터를 연산할 때 사용할 수 있는 문법을 정리해보았습니다.
문자열 함수에 대한 내용은 공식 문서를 참고해보시길 바랍니다. 이 중에서 자주 사용할만한 함수들을 정리해보았습니다.
-- 문자열 자르기
SUBSTRING/SUBSTR(컬럼명 또는 문자열, 시작 위치, 길이)
LEFT(컬럼명 또는 문자열, 문자열의 길이)
RIGHT(컬럼명 또는 문자열, 문자열의 길이)
-- 문자 합치기
CONCAT(컬럼명 또는 문자열1, 컬럼명 또는 문자열2)
-- 공백 제거
TRIM('ABC ') -> 'ABC'
-- 문자열 길이 반환
CHARACTER_LENGTH(문자열)
-- 대소문자 변환
LOWER(컬럼명 또는 문자열)
UPPER(컬럼명 또는 문자열)
숫자 함수에 대한 내용도 공식 문서를 참고해보시길 바랍니다. 이 중에서 자주 사용할만한 함수들을 정리해보았습니다.
CEIL(컬럼명 또는 값) -- 올림
FLOOR(컬럼명 또는 값) -- 내림
ROUND(컬럼명 또는 값, 자릿수) -- n자리 숫자로 반올림
TRUNCATE(컬럼명 또는 값, 자릿수) -- n자리 숫자 이하 버림
ABS(컬럼명 또는 값) -- 절댓값
POW(컬럼명 또는 값, n) / POWER(x,n) -- x의 n승
POWER(컬럼명 또는 값, 1/n) -- x의 n제곱근
SQRT(컬럼명 또는 값) -- s의 n제곱근
MOD(컬럼명 또는 값, n) -- x를 n로 나눈 나머지
DATE_FORMAT 함수에 대한 내용은 공식 문서를 참고해보시길 바랍니다. 이 중에서 자주 사용할만한 함수들을 정리해보았습니다.
-- 날짜를 원하는 형식으로 출력
DATE_FORMAT(날짜, 형식)
-- 시간까지 나와 있는 데이터를 일자까지만 나오도록 변경
DATE()
-- 시간 더하기 : DATE_ADD(기준날짜, INTERVAL)
SELECT DATE_ADD(NOW(), INTERVAL 1 SECOND)
SELECT DATE_ADD(NOW(), INTERVAL 1 MINUTE)
SELECT DATE_ADD(NOW(), INTERVAL 1 HOUR)
SELECT DATE_ADD(NOW(), INTERVAL 1 DAY)
SELECT DATE_ADD(NOW(), INTERVAL 1 MONTH)
SELECT DATE_ADD(NOW(), INTERVAL 1 YEAR)
SELECT DATE_ADD(NOW(), INTERVAL -1 YEAR)
-- 시간 빼기
SELECT DATE_SUB(NOW(), INTERVAL 1 SECOND)