Вы бы использовали группу по пунктам и группу по дате.
Вы не предоставили примерные записи с ожидаемыми результатами, которые помогают нам помочь вам :).
Другими словами, пост больше информации ..
Но из того, что я могу сказать, вы хотите рассчитывать на основе диапазона дат.
Так что, если у вас было 01.01.2010 с 10 рядами
и 1/2/2010 с 20 ссылочными строками
и 1/3/2010 с 6 ссылочными строками ... вы хотели бы выводить так:
1/1/2010 10
1/2/2010 20
1/3/2010 6
Итак SELECT COUNT(*), MyDate FROM MyTable GROUP BY MyDate
Чтобы ответить на ваш вопрос о диапазоне дат, подумайте, как работает группировка по группам, она работает, группируя набор данных путем объединения всех наборов, которые соответствуют критериям. Поэтому, когда вы говорите «группировка по дате», она группируется по одной дате. Вы хотите диапазон дат, поэтому каждая строка должна знать или понимать диапазон (от начала до конца). Поэтому вам нужно включить эти столбцы в каждую строку, сгенерировав их с помощью SQL.
Редактировать
Например
SELECT Count(*), DATEADD(day, -10, GetDate()) AS StartDate, DATEADD(day, 10, GetDate()) AS EndDate
FROM MyTable GROUP BY StartDate, EndDate
Access имеет аналогичные функции для добавления дней к датам, так что ищите это для MS Access. Затем просто сгенерируйте дату начала и окончания для каждого столбца.