Last, Max - не получается запрос

minni_m
Дата: 14.09.2005 12:24:57
Утро доброе.
Есть 2 таблицы: Kandidat и Protokoll для кандидатов. связь primary key - forign key, один ко многим. Надо сделать запрос, который выводит всех кандидатов и только последнюю запись для кажд. кандидата из протокола. Мой (неправильный) вариант с MAX:

SELECT Kandidat.ID, Kandidat.NAME, Max(Protokoll.Date), Max(Protokoll.Text), Max(Protokoll.Sotrudnik) FROM Kandidat Left Join Protokoll ON Kandidat.ID=Protokoll.KandID

дает как и нужно только посл. запись из протокола, но сотрудника берет левого, просто по алфавиту сортирует из всех записей для данного кандидата и присобачивает как тоже последнего.
Как с этим бороться?
Пользователь2
Дата: 14.09.2005 12:38:41
SELECT Kandidat.ID, Kandidat.NAME, 
Last(Protokoll.Date) AS [Last-Date], 
Last(Protokoll.Text) AS [Last-Text], 
Last(Protokoll.Sotrudnik) AS [Last-Sotrudnik]
FROM Kandidat INNER JOIN Protokoll ON Kandidat.ID = Protokoll.KandID
GROUP BY Kandidat.ID, Kandidat.NAME;
minni_m
Дата: 14.09.2005 12:44:28
Пользователь2
SELECT Kandidat.ID, Kandidat.NAME, 
Last(Protokoll.Date) AS [Last-Date], 
Last(Protokoll.Text) AS [Last-Text], 
Last(Protokoll.Sotrudnik) AS [Last-Sotrudnik]
FROM Kandidat INNER JOIN Protokoll ON Kandidat.ID = Protokoll.KandID
GROUP BY Kandidat.ID, Kandidat.NAME;


Спасибо заработало.