solepixel Posted January 20, 2009 Share Posted January 20, 2009 I need to display how many records are in each month/year in a grid view. To program this in a table manner, it would be very helpful if every month in every year have 1 or more records, however that's not the case, so I was wondering if it's possible to fill in those gaps some way with 0s at the query level. I was trying to figure out a way to do it at PHP level, however it was going to get way complicated to keep track of the current month, then match it with the row value, etc. If i had representation for every month and year within the range, i could just spit out my data accordingly. Here's the query I'm using: SELECT COUNT(`id`) AS `total`, DATE_FORMAT(`report_date`,'%Y-%m') AS `group_date`, DATE_FORMAT(`report_date`,'%Y') AS `report_year`, DATE_FORMAT(`report_date`,'%m') AS `report_month`, DATE_FORMAT(`report_date`,'%M') AS `disp_month` FROM `mhl_reports` WHERE `deleted` IS NULL AND YEAR(`report_date`) >= '2001' AND YEAR(`report_date`) <= '2009' GROUP BY `group_date` ORDER BY `report_month` ASC, `report_year` DESC; Quote Link to comment https://forums.phpfreaks.com/topic/141678-how-to-fill-in-missing-date-gaps-in-date-range/ Share on other sites More sharing options...
fenway Posted January 21, 2009 Share Posted January 21, 2009 If you have an integers table, it should be easy to generate a table on-the-fly with the date range in question. Quote Link to comment https://forums.phpfreaks.com/topic/141678-how-to-fill-in-missing-date-gaps-in-date-range/#findComment-742603 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.