Вы должны дать больше информации о вашем контексте;
Решение
в любом случае выполните следующие действия:
- Напишите запрос, который возвращает Имя доктора , День и время , Назначение
- Отфильтровать запрос по интересующей дате
- Создайте
cross-tab
, поместив Имя доктора в столбцы, День и Время в строках, Назначение в поле
- Сводка Назначение на МАКС (или МИН, другой отчет о суммировании числа, не действительного значения)
- Изменить стиль для исключения итогов для строк и столбцов (я полагаю, вам не нужно)
- Изменить формат для дня и времени (щелкните правой кнопкой мыши по полю), чтобы показывать только часы (и минуты)
- Изменить параметры для дня и времени (в Эксперт кросс-таблицы) для отображения строки каждую минуту (по умолчанию «каждый день» будет отображаться только 1 строка ..)
- Приятного просмотра
Будьте осторожны
- В кросс-таблице допускается только 1 встреча в ряду
- Если во времени, приходящем на запрос, есть промежуток времени, то в кросс-таблице будет промежуток (см. Строку 16.00); запрос должен быть написан так, чтобы сообщать о пустых встречах.
Пример отчета
Я создал образец отчета.
Пример запроса
SELECT 'Doctor 1' as Doctor, CAST('2012-02-01 07:00:00' AS DATETIME) as DateTime , 'mr. Red' as Appointment
union
SELECT 'Doctor 1' , CAST('2012-02-01 07:30:00' AS DATETIME) , 'mr. Pink'
union
SELECT 'Doctor 1' , CAST('2012-02-01 08:00:00' AS DATETIME) , 'mr. White'
union
SELECT 'Doctor 1' , CAST('2012-02-01 08:30:00' AS DATETIME) , 'mr. Yellow'
union
SELECT 'Doctor 1' , CAST('2012-02-01 09:00:00' AS DATETIME) , 'mr. Green'
union
SELECT 'Doctor 1' , CAST('2012-02-01 09:30:00' AS DATETIME) , 'mr. Gray'
union
SELECT 'Doctor 1' , CAST('2012-02-01 16:00:00' AS DATETIME) , 'mr. Purple'
union
SELECT 'Doctor 2' , CAST('2012-02-01 07:30:00' AS DATETIME) , 'mr. Red'
union
SELECT 'Doctor 2' , CAST('2012-02-01 08:00:00' AS DATETIME) , 'mr. Orange'
union
SELECT 'Doctor 3' , CAST('2012-02-01 09:30:00' AS DATETIME) , 'mr. Blue'