2013-04-27 2 views
0

매년 사용자가 회원임을 이메일로 보내야합니다. 여기 가리키고 잘못 내 원래의 쿼리는 더 이상 유효하기 때문에 첫 해 이후입니다 :MySQL 되풀이 년 타임 스탬프 쿼리

SELECT * FROM users WHERE date_format(date_created,'%Y-%m-%d') + INTERVAL 365 DAY = CURRENT_DATE()

가 어떻게 그들이 적극적 것을 매년 유효 할 수 있도록이 문제를 해결합니까?

+0

어떻게 윤년 처리 하시겠습니까? 3 월 1 일에 –

답변

0

이것은?

SELECT * FROM users 
WHERE DAY(date_format(date_created,'%Y-%m-%d')-CURRENT_DATE()) = 0 
AND MONTH(date_format(date_created,'%Y-%m-%d')-CURRENT_DATE()) = 0 

이상 :

SELECT * FROM users 
WHERE DAY(date_created)=DAY(CURRENT_DATE()) 
AND MONTH(date_created)=MONTH(CURRENT_DATE()) 
+0

으로 전자 메일을 보내려면 2 월 29 일에 등록한 사람과 3 월 1 일에 등록한 사람에게 전자 메일을 보내야합니다. 현재 쿼리가이를 수행하지 않습니다. – Manu

+0

where 절의 특수한 경우로 처리해야합니다. –

+0

뭔가 일반적인 것이 나을 것 같아요. – Manu