You need to use the DAYOFWEEK function If the End of the Week in Saturday, any date can be morphed into a Saturday. For example, this computes the upcoming Saturday SELECT DATE(NOW() + INTERVAL (7 - DAYOFWEEK(NOW())) DAY); For a table called mytable with a Date Column called theDate, your summation would be SELECT COUNT(1) DateCount,EndOfWeekDate FROM ( SELECT DATE(theDate + INTERVAL (7 - DAYOFWEEK(theDate)) DAY) EndOfWeekDate FROM mytable ) A GROUP BY EndOfWeekDate; If you have a different day of the week as the end of week, let me know and I will rewrite the query. Give it a Try !!!