webForumDet fria alternativet

Max(datum)

2 svar · 185 visningar · startad av doggelito

doggelitoMedlem sedan juni 20003 100 inlägg
#1

Denna hämtar inte högsta datumet varför, något fel?
I en fråga finns ett svar med datum: 2002-12-09 15:00:00
i en annan: 2002-12-10 14:00:00
och jag får den första av denna kod.

Select M.Alias, Max(Fr.Regdate) " & _
"From tblQuestions Fq " & _
"Inner Join tblReplies Fr On Fq.Questionid = Fr.Questionid " & _
"Inner Join tblMembers M On Fr.Memberid = M.Memberid " & _
"Where Fq.Categoryid = 1 " & _
"Group By M.Alias

kollar jag lokalt på min server i query analyzer så blir det rätt, i webservern har jag inte möjlighet att kolla.

databas: sql-2000

LarsGMedlem sedan dec. 200012 465 inlägg
#2

Du hämtar senaste datum per alias inte per question.

Så, group by fr.questionid istället.

Om du vill ha med alias så kan du lägga den som en skalär subselect.

doggelitoMedlem sedan juni 20003 100 inlägg
#3

Får inte till det, vad menas med skalär?
Försökte med en subselect men med samma resultat.
Omgjord till en procedur denna gång:

CREATE PROCEDURE dbo.sp_viewReplies_Last 
@Questionid int
AS
Select R.Memberid, Max(R.Regdate), 
(Select Alias From tblMembers Where Memberid = R.Memberid)
From tblReplies R
Where R.Questionid = @Questionid
Group By R.Memberid
GO
122 ms totalt · 3 externa anrop · cache AV · v20260731051352-full.56cc9887
0 ms — hämta statistik (cache)
0 ms — hämta forumlista (cache)
119 ms — hämta tråd, inlägg och bilagor (db)