티스토리 뷰

반응형

기존 mysql 테이블을 이용하여 작업 도중

테스트를 위해 액션이 발생할때 기존에 저장된 날짜를 하루씩 빼야 되는 경우가 발생하였다.

 

보통 테이블의 필드를 date, datetime 형식이면 DATE_ADD(), DATE_SUB() 내장함수를 이용하면 쉽게 처리가 가능하다.

SELECT DATE_ADD(check_date, INTERVAL 1 DAY); //check_date 필드의 날짜에 1일 더하기

SELECT DATE_SUB(check_date, INTERVAL 1 DAY); //check_date 필드의 날짜에 1일 빼기

 

 

그러나 현재 테이블에는 날짜 형식을 숫자형으로 입력을 해야되서, 날짜를 더하거나 뺀뒤 한번 더 변환이 필요하다.

SELECT DATE_FORMAT(DATE_ADD('20210901', INTERVAL 1 DAY), '%Y%m%d'); //날짜를 더한 후 계산후 포맷 변경

SELECT DATE_FORMAT(DATE_SUB('20210901', INTERVAL 1 DAY), '%Y%m%d'); //날짜를 뺀 후 계산후 포맷 변경

 

보통 날짜를 사용하는 필드를 date, datetime 형태로 사용하는데 기존 데이터는 숫자로 처리를 해야되서

위처럼 변환하여 사용한 뒤 기록을 남겨둠

 

자세한 사용방식은 함수를 검색해보면 확인이 가능합니다.

반응형

'개발 n > mysql' 카테고리의 다른 글

mysql 데이터 삭제 비교  (0) 2020.11.18
mysql sql문 정리  (0) 2020.11.17
mysql select 기본 쿼리  (0) 2020.11.16
mysql 데이터 타입  (0) 2020.11.13
mysql 함수 정리 (GROUP BY 와 같이 쓰이는 함수)  (0) 2020.11.12
댓글