powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
9 сообщений из 9, страница 1 из 1
Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
    #32652789
тот самый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет народ,

Есть таблица, в которую вводится история изменений должностных атрибутов сотрудника (каждому атрибуту соответствует поле). Например: В начале ввели дату принятия сотрудника. Следущая запись изменения оклада, далее изменение доолжности.

Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов.

Спасибо.
...
Рейтинг: 0 / 0
Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
    #32652817
Фотография маяк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тот самыйЕсть таблица, в которую вводится история изменений должностных атрибутов сотрудника (каждому атрибуту соответствует поле). Например: В начале ввели дату принятия сотрудника. Следущая запись изменения оклада, далее изменение доолжности.

Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов.Пожалуй никак. Я бы выбирал рекордсет со всей фигнёй на этого сотрудника и дальше вбкодом делал бы из него требуемое.
...
Рейтинг: 0 / 0
Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
    #32652828
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хорошо бы все-таки привести структуру таблицы
...
Рейтинг: 0 / 0
Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
    #32652855
Раз (1)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как еще один вариант.
Делаете таблицу с требуемыми полями(атрибутами), а потом прогоняете по запросу на обновление для каждого поля, потом открываете эту таблицу и видите все последние атрибуты.

Одним запросом, ИМХО, никак, если в каждой записи хранить только изменяем(ый/ые) атрибут(ы).

Чтобы упростить себе жизнь, предлагаю в каждой новой записи хранить ВСЕ атрибуты, а не ТОЛЬКО ИЗМЕНЯЕМЫЕ, тогда проблем не будет.
...
Рейтинг: 0 / 0
Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
    #32652879
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
select dlast(...), dlast(...), dlast(...) ...
...
Рейтинг: 0 / 0
Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
    #32652887
мимо проходил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PIVOT не поможет?
...
Рейтинг: 0 / 0
Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
    #32652888
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чёт я не понимаю. Первый запрос для данного служащего возвращает максимальную дату для каждого атрибута,

второй запрос возвращает для данного служащего, атрибута и даты из первого запроса значение атрибута.


P.S. Структкра данных годная
...
Рейтинг: 0 / 0
Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
    #32652890
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что, собственно, сложного? Представляю себе таблицу tbl1 так:
EmpID, EventDate, AtribID, Note

Код: plaintext
1.
2.
3.
4.
5.
6.
SELECT tbl1.EmpID, tbl1.EventDate, tbl1.AtribID, tbl1.Note
FROM tbl1 
INNER JOIN (
SELECT EmpID, AtribID, MAX(EventDate) AS EventDate
FROM tbl1 
GROUP BY EmpID, AtribID ) AS T
ON tbl1.EmpID = T.EmpID AND tbl1.AtribID = T.AtribID AND tbl1.EventDate = T.EventDate
...
Рейтинг: 0 / 0
Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
    #32652895
v-metallic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если таблица содержит историю, то вней непременно должно быть поле типа дата. В этом случае запрос делается так:

SELECT TOP 1 [Набор полей] FROM [Таблица] WHERE [Поле_типа_дата]<=[Требуемая_дата] ORDER BY [Поле_типа_дата] DESC

Принцип простой:
Требуется узнать, допустим должность сотрудника на 20.05.2004
Для этого:
Отберем данные для этого сотрудника, введенные ранее (или 20.05.2004).
Сортируем эти данные по убыванию
Отбираем первую запись: это и будет требуемая запись

Влад
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Взываю о помощи (Как построить запрос, который выдавал бы одну запись, в которой содержалась бы самая споследняя информация по каждому из атрибутов)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]