날짜 및 시간 함수
- ADDDATE(날짜, 차이), SUBDATE(날짜, 차이) : 날짜를 기준으로 차이를 더하거나 뺀 날짜를 구함
예)
1. SELECT ADDDATE('2025-01-01', INTERVAL 31 DAY),ADDDATE('2025-02-01', INTERVAL 1 MONTH);

2. SELECT SUBDATE('2025-01-01', INTERVAL 31 DAY) , SUBDATE('2025-01-01', INTERVAL 1 MONTH);

- ADDTIME (날짜/시간, 시간) , SUBTIME (날짜/시간, 시간) : 날짜/시간을 기준으로 시간을 더하거나 뺀 결과
예)
1. SELECT ADDTIME ('2025-01-01 23:59:59', '1:1:1'), ADDTIME ('15:00:00' , '2:10:10') ;

2. SELECT SUBTIME ('2025-01-01 23:59:59', '1:1:1'), SUBTIME ('15:00:00' , '2:10:10') ;

-CURDATE(), CURTIME(). NOW(), SYSDATE() :
CURDATE()는 현재 'YYYY-MM-DD', CURTIME()는 현재 'HH:MM:SS' 구함
NOW() 와 SYSDATE()는 현재 'YYYY-MM-DD HH:MM:SS' 를 구함
-YEAR(날짜), MONTH (날짜), DAY (날짜), HOUR (날짜), MINUTER (시간), SECOND (시간), MICROSECOND (시간)
날짜 또는 시간에서 년, 월, 일, 시 ,분 ,초, 밀리초 구함
예)
1.SELECT YEAR(CURTIME()), MONTH(CURDATE()), DAYOFMONTH(CURDATE());

2. SELECT HOUR(CURTIME()), MINUTE(CURIME()), SECOND(CURTIME()), MICROSECOND(CURTIME());

- DATE(), TIME() : DATETIME 형식에서 년-월-일 및 시:분:초 만 추출함
예) SELECT DATE(NOW()), TIME(NOW());

- DATEIFF(날짜1, 날짜2), TIMEDIFF(날짜1 또는 시간 1, 날짜1 또는 시간 2) :
두 날짜 사이의 일 수를 구함
DATEDIFF()는 날짜1-날짜2의 일수를 결과로 구함 즉, 날짜2에서 날짜1까지 며 칠 남았는지 구함
TIMEDIFF()는 시간1-시간2의 결과를 구함
SELECT DATEDIFF('2025-01-01', NOW()), TIMEDIFF('23:23:59' , '12:11:10');
--결과는 2025년 1월 1일에서 오늘의 날짜를 뺀 일자와 11:12:49 반환

-DAYOFWEEK(날짜), MONTHNAME(), DAYOFYEAR(날짜) : 요일(1 : 일 , 2 : 월 ~ 7 : 토) 중 1녕 중 몇 번째 날짜인지를 구함
예) SELECT DAYOFWEEK(CURDATE()), MONTHNAME(CURDATE()), DAYOFYEAR(CURDATE());
현재 요일과 월 이름 그리고 일년 중 며 칠이 지났는지 반환

- LAST_DAT(날짜) : 주어진 날짜의 마지막 날짜를 구함, 주로 그 달이 며칠까지 있는지 확인할 때 사용
예) SELECT LAST_DAY ('2025-02-01');
-- 결과는 '2025-02-29'

- MAKEDATE(연도, 정수) : 연도에서 정수만큼 지난 날짜를 구함
예) SELECT MAKEDATE(2025, 32) ;
--결과는 2025년의 32일이 지난 날짜인 '2025-02-01'

- MAKETIME(시,분.초) : 시, 분, 초 이용해서 '시:분:초' 의 TIME 형식을 만들어줌
예) SELECT MAKETIME(12, 11, 10) ;

- PERIOD_ADD(연원, 개월수), PERIOD_DIFF(연월1, 연월2) :
PERIOD_ADD()는 연월에서 개월만큼의 개월이 지난 연월을 구함. 연월은 YYYY 또는 YYYYMM 형식 사용
PERIOD_DIFF()는 연월1 - 연월2의 개월수를 구함
예) SELECT PERIOD_ADD(202501, 11) , PERIOD_DIFF(202501, 202312);

- QUARTER(날짜) : 날짜가 4분기 중에서 몇 분기인지를 구함
예) SELECT QUARTER('2025-07-07');

-TIME_TO_SEC(시간) : 시간을 초 단위로 구함
예) SELECT TIME_TO_SEC('12:11:10');

- EXTRACT(출력할 년,월,일 중 하나 FROM 'YYYY-MM-DD')
SELECT EXTRACT(YEAR FROM '2024-09-11');

'MySQL' 카테고리의 다른 글
| MySQL_Windows Powershell(관리자) DB용량 늘리기 (0) | 2024.09.11 |
|---|---|
| MySQL_내장함수_시스템 정보 함수 (0) | 2024.09.11 |
| MySQL_내장함수_수학함수 (0) | 2024.09.11 |
| MySQL_SQL 실행 단축키 (0) | 2024.09.10 |
| MySQL_문자열 함수 (0) | 2024.09.10 |