Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Просьба помочь с запросом... [D5, MSSQL]


AM ©   (2002-09-20 11:07:00) 

Всем Привет!Упросченная ситуация такая: имеется следующая таблица

NName SDate Mark

Иванов | 14.01.02 | 2
Иванов | 14.02.02 | 3
Иванов | 20.03.02 | 5
Иванов | 05.07.02 | 4
Петров | 07.04.02 | 5
Петров | 10.05.02 | 1
Петров | 15.09.02 | 2
Петров | 08.10.02 | 3
Козлов | 08.01.02 | 2
Козлов | 11.08.02 | 4

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

Иванов | 05.07.02 | 4
Петров | 08.10.02 | 3
Козлов | 11.08.02 | 4

Можно даже без колонки дат... (котя конечно лучше с ней)

Как его можно реализовать?


AM   (2002-09-20 11:25:00) [1]

>>passm ©
спасибо большое, получилось!


passm   (2002-09-20 11:16:00) [2]

Попробуй по схеме:
SELECT T1.NNAME, T1.SDATE, T1.MARK
FROM TABLE1 T1
INNER JOIN (SELECT T2.NNAME, MAX(T2.SDATE) AS MAX_DATE
FROM TABLE1 T2
GROUP BY T2.NNAME) AS Q1 ON (T1.NNAME = Q1.NNAME
AND T1.SDATE = Q1.MAX_DATE)


Наверх

Титульная страница Поиск, карта сайта Написать письмо