It's much better to use add_date instead of to_days since mysql isn't smart enough to do it for you.
Such as:
SELECT yourEventFields FROM theTable
WHERE theEventDate BETWEEN now() AND date_add(now(), INTERVAL 21 DAYS;

This way mysql will calc the now() and date_add and will essentially convert them to static values. If there's an index on theEventDate it will be used.


Instruct ICC wrote:
From: rDubya <[EMAIL PROTECTED]>
My problem is that I have events dated for Sep 2007 and on, and yet
they all come up as being on Dec 7 to 9, 2006..  any ideas?


How about having MySQL only return the events you are interested in?

SELECT yourEventFields FROM theTable
TO_DAYS( theEventDate ) >= TO_DAYS( NOW() )
TO_DAYS( theEventDate ) <= TO_DAYS( NOW() ) + 21

I like theEventDate to be in the format YYYY-MM-DD

A place for moms to take a break!

PHP Database Mailing List (
To unsubscribe, visit:

Reply via email to