MySQL을 사용하다 보면 날짜를 더하고 빼야하는 경우가 있다.
오늘은 이런 경우에 사용하는 DATE_ADD, DATE_SUB함수에 대해 알아보려고 한다.
현재시간 출력
먼저 NOW() 함수를 사용해서 현재 시간을 SELECT 한다.
날짜 더하기
날짜를 더할 때 사용하는 함수는 DATE_ADD()이다.
DATE_ADD( 날짜 , interval 숫자 날짜간격 ) 의 형태로 사용한다.
그럼 바로 MySQL에서 사용해보도록 하겠다.
일 단위 더하기
일 단위로 날짜를 더하기 위해 날짜 간격을 day라고 입력해주었다.
현재 날짜에서 1일이 더해진 날짜가 출력된다.
월 단위 더하기
월 단위로 날짜를 더하기 위해 날짜 간격을 month라고 입력해주었다.
현재 날짜에서 2달이 더해진 날짜가 출력된다.
분기 단위 더하기
분기 단위로 날짜를 더하려면 날짜 간격을 quarter로 입력한다.
현재 날짜에서 3분기가 더해진 날짜가 출력된다.
년 단위 더하기
년 단위로 날짜를 더하려면 날짜 간격을 year로 입력한다.
현재 날짜에서 4년이 더해진 날짜가 출력된다.
날짜 빼기
날짜를 뺄 때 사용하는 함수는 DATE_SUB()이다.
DATE_ADD 함수와 동일하게 DATE_SUB( 날짜 , inverval 숫자 날짜간격 ) 의 형태로 사용한다.
실습 고고
일 단위 빼기
일 단위로 날짜를 빼기 위해 날짜 간격을 day라고 입력해주었다.
현재 날짜에서 5일이 빼진 날짜가 출력된다.
날짜 빼기에서 재밌는 점은 날짜 간격에 마이너스를 사용할 수 있다는 것이다.
위와 같이 DATE_ADD 함수에서 -5를 사용하는 것과 같은 결과가 나온다.
월 단위 빼기
월 단위로 날짜를 빼기 위해 날짜 간격을 month라고 입력해주었다.
현재 날짜보다 6월 빠진 값을 출력한다.
분기 단위 빼기
분기 단위로 날짜를 빼기 위해 날짜 간격을 quarter라고 입력해주었다.
현재 날짜보다 7분기 빠진 값을 출력한다.
년 단위 빼기
년 단위로 날짜를 빼기 위해 날짜 간격을 year라고 입력해주었다.
현재 날짜보다 8년 빠진 값을 출력한다.
이렇게 날짜를 더하고 빼는 함수에 대해 알아보았다.
DATE_ADD, DATE_SUB 함수는 정말 사용할 일이 많지만 매번 정확하게 기억이 안 나서 구글링을 해가며 작업했었다.
이번 기회에 깔끔하게 정리 완료!
'데이터 엔지니어링 > MYSQL' 카테고리의 다른 글
[MySQL] JOIN의 종류와 각각의 차이점 (0) | 2023.04.13 |
---|---|
[MySQL] if 문으로 조건 적용하기 (0) | 2022.11.07 |
[MySQL] 그룹별 순위 매기기 | Ranking 부여 (0) | 2022.10.20 |