rhysmeister Posted October 29, 2003 Share Posted October 29, 2003 I am trying to grab a field in a database where a date field is between the current date and within 60 / 45 / 30 / 15 days time(selected by a drop down box). Here is my sql SELECT domainname FROM domainname WHERE expirydate BETWEEN CURDATE() and CURDATE()+$selecteddays I have typed the same sql into the MySQL console and it accepts it without error, but returns no results, but I know there are entries the query should pick out that are present in the table. Any ideas people? Many thanks! Quote Link to comment Share on other sites More sharing options...
radox Posted October 29, 2003 Share Posted October 29, 2003 your sytanx doesn\'t even make sense. Today+15?!?!...that day doesn\'t even exist yet! Another thing, the earllier date has to come first. Try: SELECT * FROM table WHERE (Date BETWEEN CURDATE()-\'$selecteddays\' and CURDATE()) i\'m pretty sure you meant 15/45/60 days back...right? Quote Link to comment Share on other sites More sharing options...
pauper_i Posted October 29, 2003 Share Posted October 29, 2003 Take a look at the DATE_ADD(date,INTERVAL expr type) and DATE_SUB(date,INTERVAL expr type) functions: http://www.mysql.com/doc/en/Date_and_time_..._functions.html Quote Link to comment Share on other sites More sharing options...
rhysmeister Posted November 3, 2003 Author Share Posted November 3, 2003 Just for the record... The above query was actually taken from an Access DB and worked fine (except CURDATE was DATE), obviously not standard SQL I guess. Thanks. Quote Link to comment Share on other sites More sharing options...
rhysmeister Posted November 3, 2003 Author Share Posted November 3, 2003 Got the query working... SELECT domainname FROM domainname WHERE expirydate BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL $selecteddays DAY) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.