Оператор SQL Select с помощью Inner Join - PullRequest
0 голосов
/ 18 декабря 2008

Вот мой SQL-оператор, который не возвращает заголовки потоков DISTINCT.

SELECT DISTINCT TOP 5 tblThread.Title, tblPost.Date 
FROM tblPost 
INNER JOIN tblThread ON tblPost.ThreadID = tblThread.ThreadID 
ORDER BY tblPost.Date DESC

Общее поле между tblThread и tblPost - это ThreadID.

Что я хочу сделать, так это вернуть 5 последних уникальных заголовков тем, основанных на последних 5 сообщениях в tblPost.

Пример. Если поток с именем ASP.NET был опубликован два раза и это два последних сообщения, заголовок потока (ASP.NET) должен появляться только один раз и в верхней части списка. 1008 *

Любая помощь будет принята с благодарностью.

Стефан.

1 Ответ

4 голосов
/ 18 декабря 2008

Попробуйте это:

SELECT DISTINCT TOP 5 tblThread.Title, MAX(tblPost.Date)
FROM tblPost INNER JOIN tblThread ON tblPost.ThreadID = tblThread.ThreadID 
GROUP BY tblThread.Title
ORDER BY MAX(tblPost.Date) DESC
...