2011-09-27 28 views
1

我在獲取正確的價值方面有點困難。Mysql查詢以顯示確切的7天到期客戶

我想查詢的是,在7天內過期的用戶,例如2011年10月4日,查詢應僅顯示該特定日期的結果。現在我查詢如下:

select * from users where exp_date between now() and adddate(now(), INTERVAL 7 DAY). 

此查詢會一直顯示到下一個7天。

但我想只顯示在第七天到期的客戶,因爲我移動到明天的日期,那麼今天顯示的查詢不應該顯示在明天的顯示上,而是顯示2011年10月5日到期的客戶,等等。

我該如何做到這一點?請幫助

回答

0

試試這個:

SELECT * FROM users WHERE exp_date = DATE_ADD(CURDATE(), INTERVAL 7 DAY) 

確保您exp_dateDATE

+1

感謝大家的幫助,我從另一個論壇得到了這個答案。欣賞...答案是... WHERE TO_DAYS(exp_date) - TO_DAYS(NOW())= 7 :) – sappy

+0

爲了更新你,你的代碼也工作得很好,非常感謝。 – sappy

+0

很酷。你應該選擇一個最能幫助你的答案,這樣其他人也可以從中受益:) –

0

試試這個
WHERE exp_date = CURDATE()+7

爲你使用日曆移動這樣您可以添加天或減去天:
WHERE exp_date = CURDATE()+7+$daysoffset
其中$daysoffset是0今日,1明天。

+0

無結果或錯誤顯示 – sappy

+0

我也試過這個問題,但結果與上述相同。 'exp_date' <= ADDDATE(NOW(),INTERVAL 7 DAY)和'exp_date'> = NOW() – sappy