함수 - Heeyoung-Ahn/MariaDB-with-Excel-VBA GitHub Wiki
문자열 관련 함수
CONCAT, SUBSTRING, SUBSTRING_INDEX, TRIM, CHARACTER_LENGTH, LOCATE, LPAD, RPAD, LEFT, RIGHT, REPLACE, LOWER, UPPER
- CONCAT(열1, ‘ ’, 열2) → 열1문자열 열2문자열
- SUBSTRING(‘2019-08-27’, 6, 2) → ‘08’
- SUBSTRING_INDEX('www.myslq.com', '.', 2) → 'www.mysql'
- SUBSTRING_INDEX('www.mysql.com', '.', -2) → 'mysql.com'
- TRIM('ABC ') → 'ABC'
- CHARACTER_LENGTH('나는') → 2
- LOCATE('b', 'foobarbar') → 4, LOCATE('b', 'foobarbar', 5) → 7
- LPAD('HI', 4, '!') → '!!HI'
- REPLACE('foobarba', 'bar', '-') → 'foo-ba'
- LOWER('FOOBAR') → 'foobar'
숫자 관련 함수
- ROUND(123.456, 2) → 123.46
- TRUNCATE(123.456, 2) → 123.45
- MOD(11, 3) → 2
날짜, 시간 관련 함수
- CURRENT_DATE → 현재날짜(yyyy-mm-dd)
- CURRENT_TIME → 현재시간(hh:mm:ss)
- CURRENT_TIMESTAMP → 현재날짜시간(yyyy-mm-dd hh:mm:ss)
- DATE_FORMAT(CURRENT_DATE, ‘%Y-%m-%d’) → ‘2020-02-21’
- 날짜형 데이터를 문자열 데이터로 변환
- STR_TO_DATE(‘2020-02-21’, ‘%Y-%m-%d’) → ‘2020-02-21’
- 문자열 데이터를 날짜형 데이터로 변환
- DATEDIFF(CURRENT_DATE, ‘2020-02-01’) → 20
- YEAR(), MONTH(), DAY()
- INTERVAL 1 DAY/MONTH/YEAR: DATE_ADD, DATE_SUB
- DATE_ADD(CURRENT_DATE, INTERVAL 1 DAY)
- DAYOFWEEK(‘2020-02-21’) → 6
- DAYOFMONTH(‘2020-02-21’) → 21
- DAYOFYEAR(‘2020-02-21’) → 52
- LAST_DAY(‘2020-02-21’) → ‘2020-02-29’
특정일 표시
- 금월 1일
LAST_DAY(CURRENT_DATE - INTERVAL 1 MONTH) + INTERVAL 1 DAY
- 전월 1일
LAST_DAY(CURRENT_DATE – INTERVAL 2 MONTH) + INTERVAL 1 DAY
- 금년 1일
CURRENT_DATE - INTERVAL (DAYOFYEAR(CURRENT_DATE) - 1) DAY
- 전년 1일
CURRENT_DATE - INTERVAL (DAYOFYEAR(CURRENT_DATE) - 1) DAY – INTERVAL 1 YEAR
- 금월 말일
LAST_DAY(CURRENT_DATE)
- 전월 말일
LAST_DAY(CURRENT_DATE – INTERVAL 1 MONTH)
- 금년 말일
CURRENT_DATE + INTERVAL (365 – DAYOFYEAR(CURRENT_DATE) + 1) DAY
- 전년 말일
CURRENT_DATE – INTERVAL DAYOFYEAR(CURRENT_DATE) DAY
기타함수
- CONVERT(‘2020-02-21’, DATETIME) → ‘2020-02-21 00:00:00’
- IFNULL(NULL, ‘’) → ‘’
- COALESCE(NULL, NULL, ‘’) → ‘’