Доступ к сортировке по дате пересмотра «отдельного виджета» по клиенту - PullRequest
0 голосов
/ 07 января 2010

Я пытаюсь выполнить запрос с помощью Access. Каждый клиент может иметь несколько ревизий одного и того же «виджета». Не все клиенты требуют одинаковую ревизию, например - CustomerA был введен в столбец «ID», как 10, 13, и 34 - 34 содержит данные, которые я хочу видеть, не видя записи 10 и 13 - каждый «ID» имеет дату, в которую он был введен, и тот же «виджет #» - поэтому 10, 13 и 34 показывают 'Entry #' 'widget42'`rev #' 'customerA''date enter'. Аналогично, «CustomerC» имеет только 1 запись. (1-я ревизия обычно остается пустой, то есть - некоторые не говорят Rev. 0, ячейка просто пуста.) Таким образом, «customerC» будет выглядеть так - «Entry #» «widget42» arev # (может быть пустым ) '' customerC''date вступил '. Я хочу видеть только последнюю версию для каждого клиента для любого одного виджета, все клиенты на одной странице со всеми их последними исправленными виджетами (без повторных виджетов для каждого клиента).

'Entry #' - 'widget #' - 'rev #' - 'customer #' - 'дата введена'

'10 '------' widget42'- '' - 'Brazil' ----- '08/19/1999'

'13 '------' widget42 '-' Rev 1 '-' Brazil '-----' 05/08/2001 '

'20 '------' widget5 '-' '-' Ирландия '----' 09.12.2001 '

'26 '------' widget6 '-' '-' Brazil '-----' 12/01/2001 '

'30 '------' widget5 '-' Rev 1 '-' Ирландия '----' 10/30/2003 '

'33 '------' widget42'- '' - 'Ирландия' ---- '11/16/2005'

'34 '------' widget42 '-' Rev 2 '-' Brazil '-----' 05/14/2006 '

'43 '------' widget23'- '' - 'Перу' ------- '06/16/2006'

'54 '------' widget6 '-' '-' Ирландия '----' 06/17/2006 '

ЧТО Я ХОТЕЛ УВИДЕТЬ ---------------------------- ВОЗМОЖНО Сортировать по ЗАКАЗЧИКУ ----- ПОСЛЕ ВОЗВРАТА ТОЛЬКО ПОСЛЕДНЮ ПЕРЕСМОТРНЫЙ НОМЕР

'Entry #' - 'widget #' - 'rev #' - 'customer #' - 'дата ввода'

'20 '------' widget5 '-' '-' Ирландия '----' 09.12.2001 '

'26 '------' widget6 '-' '-' Brazil '-----' 12/01/2001 '

'30 '------' widget5 '-' Rev 1 '-' Ирландия '----' 10/30/2003 '

'33 '------' widget42'- '' - 'Ирландия' ---- '11/16/2005'

'34 '------' widget42 '-' Rev 2 '-' Brazil '-----' 05/14/2006 '

'43 '------' widget23'- '' - 'Перу' ------- '06/16/2006'

'54 '------' widget6 '-' '-' Ирландия '----' 06/17/2006 '

1 Ответ

0 голосов
/ 07 января 2010

Вы можете основать свой отчет на запросе, скажем:

SELECT w.entry, w.widget, w.revx, 
       w.customer, w.date_entered 
FROM
   (SELECT entry, widget, Nz([rev],"rev0") AS revx, 
           customer, date_entered
    FROM widgets)  w 
INNER JOIN (SELECT customer, widget, Max(Nz(rev,"rev0")) As revx 
            FROM widgets 
            GROUP BY customer, widget)  AS a 
ON (w.widget = a.widget) AND (w.customer = a.customer) AND (w.revx=a.revx)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...