mysql 을 이용해서 특정기간이 경과되면 필드값 변경되게 하고 싶은데요
본문
아래 답변 주셨는데요 제가 질문을 너무너무 무식하게도 잘못 올렸네요 ㅜㅜ 죄송합니다.
다시 질문올립니다... ㅜㅜ
예를들어 date 라는 필드에 2016-01-01 00:00:00 이라는 값들이 들어 있는데요
id date type
------------------------------------
a 2016-01-01 00:00:00 0
b 2016-01-01 00:00:00 0
c 2016-01-02 00:00:00 0
d 2016-01-03 00:00:00 0
e 2016-01-02 00:00:00 0
이런식으로 있으면 date 값을 기준으로 7일 뒤인 날짜가 되면
type 값에 1을 찍어 주는거거든요
단순 무식하게 for 문으로 돌리면 될꺼 같긴한데요 혹시나 mysql 문을 가지고만 가능할까
문의드려봅니다.
고수님들 있으면 부탁드릴께요 ~
답변 2
update 테이블명 set type=1 WHERE DATE_ADD( DATE_FORMAT( date, '%Y-%m-%d' ) , INTERVAL 7 DAY ) = DATE_FORMAT( now(), '%Y-%m-%d' )
요런식이면 되지 않을까요?
날짜형식으로 변환후 7일을 더한 날짜와 오늘 날짜와 같은면 업데이트
delete from 테이블명 where date < (now() - INTERVAL 7 DAY) 이렇게 해보세요..