데이터분석 study/SQL

TIL_24.07.24_MySQL 날짜형/날짜 변환, 가공함수

justdata 2024. 7. 24. 19:05

날짜 자료형

함수 예시 기능
CURDATE CURDATE() 현재 서버 날짜
CURTIME CURTIME() 현재 서버 시간
NOW NOW() 현재 서버 날짜 및 시간

 

 

  ● MySQL 자료형

 

자료형 형식 설명
DATETIME YYYY-MM-DD HH:MM ex. 기본날짜, 시간
TIME HH:MM:SS ex. 하루 근무시간
DATE YYYY-MM-DD ex. 생일, 이벤트 날짜
YEAR YYYY or yy ex. 4자리 or 2자리 년도
TIMESTAMP YYYY-MM_DD HH:MM ex. 로그 기록
세계협정시(UTC기반)

 

 

▶날짜 변환 & 가공 함수

함수 예시 기능
YEAR YEAR('2024-07-24') 년도 추출
MONTH MONTH('2024-07-24') 월 추출
DAY DAY('2024-07-24') 날짜 추출
DAYNAME DAYNAME('2024-07-24') 요일의 이름 반환
WEEK WEEK('2024-07-24') 주 수 반환(1~53주)
DAYOFWEEK DAYOFWEEK('2024-07-24') 요일의 번호 반환
1 일요일 ~7토요일

 

 

날짜형 변환

함수 예시 기능
DATE_FORMAT DATE_FORMAT(NOW(), '%Y-%m-%d %T') 날짜형-> 날짜형 변환
STR_TO_DATE STR_TO_DATE('2023-07-10', '%Y-%m-%d') 문자형 -> 날짜형으로 변환

 

 

● 두 날짜 차이 계산

함수 예시 기능
DATEDIFF DATEDIFF('2024-07-10', '2024-07-01') 두 날짜 차이(시간정보 무시)
TIMESTAMPDIFF TIMESTAMPDIFF(DAY, '2024-07-01 12:00:00, '2024-07-10 12:00:00) 두 시간대 차이(지정된 단위 존재)
단위 : SECOND, MINUTE, HOUR, DAY, WEEK,MONTH, QUARTER, YEAR
CONVERT_TZ CONVERT_TZ(NOW(), '+00:00', '+09:00') UTC 기반 시간대 변경

 

 

● 날짜 및 시간 가공

함수 예시 기능
DATE_ADD DATE_ADD('2024-07-01', INTERVAL 10 DAY) 날짜 더하기
DATE_SUB DATE_SUB('2024-07-01', INTERVAL 1 MONTH) 날짜 빼기