I found a solution, but it really sucks. There must be a better way.My solution gives you the top 2, you need to write the rest to get the other 3. CREATE TABLE #Cat(CatID INT, CatName VARCHAR(50))CREATE TABLE #Art(ArtID INT, CatID INT, HeadLine VARCHAR(50), PublishDate DATETIME)INSERT INTO #Cat(CatID, CatName) VALUES(1, 'Hunting')INSERT INTO #Cat(CatID, CatName) VALUES(2, 'Fishing')INSERT INTO #Cat(CatID, CatName) VALUES(3, 'Football')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(1, 1, 'Hunting 1', '8/1/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(2, 1, 'Hunting 2', '8/2/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(3, 1, 'Hunting 3', '8/3/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(4, 1, 'Hunting 4', '8/4/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(5, 1, 'Hunting 5', '8/5/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(6, 1, 'Hunting 6', '8/6/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(7, 1, 'Hunting 7', '8/7/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(8, 2, 'Fishing 1', '8/1/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(9, 2, 'Fishing 2', '8/2/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(10, 2, 'Fishing 3','8/3/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(11, 2, 'Fishing 4','8/4/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(12, 2, 'Fishing 5', '8/5/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(13, 2, 'Fishing 6', '8/6/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(14, 2, 'Fishing 7', '8/7/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(15, 3, 'Football 1', '8/1/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(16, 3, 'Football 2', '8/2/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(17, 3, 'Football 3', '8/3/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(18, 3, 'Football 4', '8/4/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(19, 3, 'Football 5', '8/5/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(20, 3, 'Football 6', '8/6/2002')INSERT INTO #Art(ArtID, CatID, HeadLine, PublishDate) VALUES(21, 3, 'Football 7', '8/7/2002')SELECT c.CatID, (SELECT top 1 a.ArtID FROM #art a WHERE a.CatID = c.CatID ORDER BY a.PublishDate DESC) as ArtID1,(SELECT TOP 1 ArtID FROM #art WHERE ArtID IN (SELECT top 2 a.ArtID FROM #art a WHERE a.CatID = c.CatID ORDER BY a.PublishDate DESC)ORDER BY PublishDate ASC) as ArtID2FROM #Cat cDROP TABLE #artDROP TABLE #cat
Michael<Yoda>Use the Search page you must. Find the answer you will.</Yoda>