반응형
마이에스큐엘은 오라클이랑 달리 텍스트로 날짜 차이가 잘 구해지지 않는다.
함수를 이용해서 날짜 차이를 구하는 방법이다.
1. DATEDIFF(date1, date2)
함수명을 보면 알겠지만 두 날짜 간의 일 차이를 가져오는 함수이다.
날짜1, 날짜2 사이의 일수를 구할 수 있다.
날짜1 - 날짜2 의 값을 반환한다.
ex.
SELECT DATEDIFF('2022-10-17', '2022-09-01') FROM DUAL;
-> 46
2. TIMESTAMPDIFF(unit, date1, date2)
=> TIMESTAMPDIFF(단위, 날짜1, 날짜2)
TIMESTAMPDIFF 함수는 일 외에도 연, 분기, 월, 주, 일, 시, 분, 초 단위로 차이를 구할 수 있는 함수이다.
이것도 역시나 날짜1과 날짜2의 차이를 구한다.
날짜2 - 날짜1을 가져오고 지정한 단위로 계산해서 보여준다.
- 단위
YEAR | 연 |
QUARTER | 분기 |
MONTH | 월 |
WEEK | 주 |
DAY | 일 |
HOUR | 시 |
MINUTE | 분 |
SECOND | 초 |
ex.
SELECT TIMESTAMPDIFF(DAY, '2022-10-17', '2022-09-01') FROM DUAL
-> -46
SELECT TIMESTAMPDIFF(QUARTER, '2021-10-17', '2022-09-01') FROM DUAL
-> 3
반응형
'DEV > SQL' 카테고리의 다른 글
[PostgreSQL] INSERT, UPDATE, DELETE 실행 결과 조회 (RETURNING) (0) | 2023.07.19 |
---|---|
MySql(MariaDB) / Oracle 에서 ROLLUP 사용하기 (0) | 2023.07.07 |
PostgreSQL Null값 치환 함수 COALESCE (Feat. Oracle NVL) (0) | 2023.07.06 |
[MariaDB] java split() 처럼 쓸 수 있는 함수 SUBSTRING_INDEX (0) | 2023.07.05 |
[MySql] 천 단위, 세 자리마다 콤마 찍는 함수 (0) | 2023.07.04 |