У меня есть база данных Access 2007, которая отслеживает прогресс документа во времени. Прогрессия идет как:
- Создан
- Отправлено на проверку
- Отзыв
- Отправлено на утверждение
- Утверждена
Я создал таблицу истории изменений статуса документа с такими столбцами:
hist_id doc_id month step status datestamp
Я создал запрос, который возвращает статусы на конец месяца, например:
SELECT doc_id, month, step, status, datestamp
FROM hist
WHERE (((hist.datestamp) In
(
Select Top 1 h.[datestamp]
From hist as h
Where h.[doc_id] = hist.[doc_id] and h.[month] = hist.[month]
Order By h.[datestamp] DESC))
)
ORDER BY month, doc_id DESC;
чтобы получить ....
doc_id month step status datestamp
a 2011-01 2 sent for review 18/01/2011
b 2011-02 1 created 01/02/2011
a 2011-02 3 reviewed 19/02/2011
c 2011-03 1 created 07/03/2011
d 2011-03 1 created 08/03/2011
e 2011-06 1 created 14/06/2011
f 2011-07 1 created 05/07/2011
g 2011-07 4 sent for approval 18/07/2011
h 2011-07 2 sent for review 14/07/2011
f 2011-08 3 reviewed 29/08/2011
g 2011-08 5 approved 17/08/2011
h 2011-08 1 created 10/08/2011
e 2011-09 3 reviewed 17/09/2011
Но что мне действительно нужно, так это мой запрос на возврат документов в месяцах, для которых статус не изменился. Например, статус документа a
стал reviewed
на 19/02/2011
, но это последний раз, когда он появляется в результатах выше. Фактически он должен отображаться через каждый месяц как reviewed
, пока не станет sent for approval
.
Поэтому я пытаюсь изменить свой запрос (или запросить вышеупомянутый запрос), чтобы получить результаты, как показано ниже ...
doc_id month step status datestamp
a 2011-01 2 sent for review 18/01/2011
a 2011-02 3 reviewed 19/02/2011
b 2011-02 1 created 01/02/2011
a 2011-03 3 reviewed 19/02/2011
b 2011-03 1 created 01/02/2011
c 2011-03 1 created 07/03/2011
d 2011-03 1 created 08/03/2011
a 2011-04 3 reviewed 19/02/2011
b 2011-04 1 created 01/02/2011
c 2011-04 1 created 07/03/2011
d 2011-04 1 created 08/03/2011
a 2011-05 3 reviewed 19/02/2011
b 2011-05 1 created 01/02/2011
c 2011-05 1 created 07/03/2011
d 2011-05 1 created 08/03/2011
a 2011-06 3 reviewed 19/02/2011
b 2011-06 1 created 01/02/2011
c 2011-06 1 created 07/03/2011
d 2011-06 1 created 08/03/2011
e 2011-06 1 created 14/06/2011
a 2011-07 3 reviewed 19/02/2011
b 2011-07 1 created 01/02/2011
c 2011-07 1 created 07/03/2011
d 2011-07 1 created 08/03/2011
e 2011-07 1 created 14/06/2011
f 2011-07 1 created 05/07/2011
g 2011-07 4 sent for appr 18/07/2011
h 2011-07 2 sent for rev 14/07/2011
a 2011-08 3 reviewed 19/02/2011
b 2011-08 1 created 01/02/2011
c 2011-08 1 created 07/03/2011
d 2011-08 1 created 08/03/2011
e 2011-08 1 created 14/06/2011
f 2011-08 3 reviewed 29/08/2011
g 2011-08 5 approved 17/08/2011
h 2011-08 1 created 10/08/2011
a 2011-09 3 reviewed 19/02/2011
b 2011-09 1 created 01/02/2011
c 2011-09 1 created 07/03/2011
d 2011-09 1 created 08/03/2011
e 2011-09 1 reviewed 17/09/2011
f 2011-09 3 reviewed 29/08/2011
g 2011-09 5 approved 17/08/2011
h 2011-09 1 created 10/08/2011
Спасибо за вашу помощь ... Я действительно даже не знаю, с чего начать.