php_begins Posted February 2, 2012 Share Posted February 2, 2012 I have a date field in the database table of this format 2012-01-26.i need to write 3 different queries: a.)I need to retrieve all fields where date is between today and previous 5 days. b.)I need to retrieve all fields where date is older than 5 days from today's date. c.)I need to retrieve all fields where date between '5 days ago' to '30 days ago' Can use some inbuilt mysql function. Manipulating the query below: SELECT fields FROM table WHERE date >= CURDATE()-5 or something like this Or using a between clause. I am not getting the syntax correct. Quote Link to comment https://forums.phpfreaks.com/topic/256281-date-manipulation-correct-syntax/ Share on other sites More sharing options...
php_begins Posted February 3, 2012 Author Share Posted February 3, 2012 It is not datetime data type..it is of type date. Quote Link to comment https://forums.phpfreaks.com/topic/256281-date-manipulation-correct-syntax/#findComment-1313880 Share on other sites More sharing options...
The Little Guy Posted February 3, 2012 Share Posted February 3, 2012 I think this should help you. a. select * from my_table where date_col between now() and date_sub(now(), interval 5 day); b. select * from my_table where date_col < date_sub(now(), interval 5 day); c. select * from my_table where date_col between date_sub(now(), interval 30 day) and date_sub(now(), interval 5 day); Quote Link to comment https://forums.phpfreaks.com/topic/256281-date-manipulation-correct-syntax/#findComment-1314098 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.