일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 티베로
- String Functions and Date Operators
- HTTP
- 윈도우
- MySQL
- Sring Functions and Operators
- String Functions and Operators
- 전자정부 표준프레임워크
- 오라클
- 전자정부표준프레임워크
- Date and Time Function
- Data and Time Functions
- Date and Time Functions
- SVN
- Oracle
- Tibero
- 방화벽
- String Function and Operators
- Today
- Total
웹이야기
MySQL 날짜 차이 TIMESTAMPDIFF() 본문
MySQL 날짜 차이를 구하는 함수
DATEDIFF 도 있는 것 같지만
여기서는
TIMESTAMPDIFF()
만 잠시 살펴본다.
간단하게는 나이를 구하는데 유용해보이고, 날짜간의 차이를 구하는데에도 유용해 보인다.
예제
1) 현재 날짜와 특정일 간 초의 차이(SECOND)
mysql>SELECT CURDATE(), TIMESTAMPDIFF(SECOND, '2000-01-01', CURDATE());
2) 현재 날짜와 특정일 간 분의 차이(MINUTE)
mysql>SELECT CURDATE(), TIMESTAMPDIFF(MINUTE, '2000-01-01', CURDATE());
3) 현재 날짜와 특정일 간의 시간 차이(HOUR)
mysql>SELECT CURDATE(), TIMESTAMPDIFF(HOUR, '2000-01-01', CURDATE());
4) 현재 날짜와 특정일 간의 일 차이(DAY)
mysql>SELECT CURDATE(), TIMESTAMPDIFF(DAY, '2000-01-01', CURDATE());
5) 현재 날짜와 특정일 간의 주 차이(WEEK)
mysql>SELECT CURDATE(), TIMESTAMPDIFF(WEEK, '2000-01-01', CURDATE());
6) 현재 날짜와 특정일 간의 달 차이(MONTH)
mysql>SELECT CURDATE(), TIMESTAMPDIFF(MONTH, '2000-01-01', CURDATE());
7) 현재 날짜와 특정일간의 분기 차이(QUARTER)
mysql>SELECT CURDATE(), TIMESTAMPDIFF(QUARTER, '2000-01-01', CURDATE());
8) 현재 날짜와 특정일간의 연 차이(YEAR)
mysql>SELECT CURDATE(), TIMESTAMPDIFF(YEAR, '2000-01-01', CURDATE());
TIMESTAMPDIFF 는
TIMESTAMPDIFF(단위, 날짜1, 날짜2); 형태로 사용하는 데 날짜2 -날짜 1의 형태이다.
따라서 아래와 같이 사용도 가능하며 아래와 같은 경우에는 값이 - 형태로 나온다.
mysql>SELECT CURDATE(), TIMESTAMPDIFF(SECOND, '2030-01-01', CURDATE());
mysql>SELECT CURDATE(), TIMESTAMPDIFF(MINUTE, '2030-01-01', CURDATE());
mysql>SELECT CURDATE(), TIMESTAMPDIFF(HOUR, '2030-01-01', CURDATE());
mysql>SELECT CURDATE(), TIMESTAMPDIFF(DAY, '2030-01-01', CURDATE());
mysql>SELECT CURDATE(), TIMESTAMPDIFF(WEEK, '2030-01-01', CURDATE());
mysql>SELECT CURDATE(), TIMESTAMPDIFF(MONTH, '2030-01-01', CURDATE());
mysql>SELECT CURDATE(), TIMESTAMPDIFF(QUARTER, '2030-01-01', CURDATE());
mysql>SELECT CURDATE(), TIMESTAMPDIFF(YEAR, '2030-01-01', CURDATE());
아래 URL을 참고하였다.
https://extbrain.tistory.com/78
'D > MySQL' 카테고리의 다른 글
MySQL 연, 월, 일, 요일 구하는 함수 (0) | 2020.03.06 |
---|---|
MySQL 현재 시간/날짜 (0) | 2020.03.06 |
MySQL sorting 대소문자 구별 (0) | 2020.03.06 |
Incorrect string value: '\xEC\xA0\x84\xEC\x9E\x90...' for column... (0) | 2020.03.05 |
MySQL 데이타베이스 생성 및 사용 (0) | 2020.03.04 |