Distinkt fungerar ju som så att den ser till hela select-listan. Du kan alltid prova att enbart gruppera på samtliga fält i selectlistan istället, eller, eftersom det är så få poster sortera bort dubletterna när du presenterar dem.
Hejsan på er i blåsten. Har stött på patrull med en grej som är grymt enervernade och har inte fått rätt på det. Hoppas på tur att någon vill lägga ner en stund och hjälpa mig.
Vi vill visa senaste besökarna hos en viss användare.
Tabellen [dbo].[log.Visits] Innehåller
UserID (uniqueidentifier) - Ägarens unika användar ID
LogID (uniqueidentifier) - Besökarens unika användar ID
LogDate (datetime) - Tidstämpel via (getdate())
Denna körs varje gång någon besöker en viss sida. Men när vi visar data för senaste besökare så vill vi så klart snyggt visa ett användarnamn åt gången.
Problemet är våra användare ofta hamnar på användarens presentationssida fler gånger på raken och hamnar då ex antal gånger i [dbo].[log.Visits].
Vår sql sats ser nu ut så här :
SELECT DISTINCT TOP 10
v.logDate as date,
u.name as name,
u.userid as userid
FROM
[dbo].[log.Visits] v
INNER JOIN
[dbo].[security.users] u ON v.logid = u.userid
WHERE
v.userId = @userId
GROUP BY u.name, u.userid, v.logDate
order v.logdate
Men det resulterar i en lista så som:
Iduro
Iduro
Iduro
Anettew
Anettew
Jonsson
Jonsson
Jonsson
Jonsson
Tripitaka
Jag försår att databasen ser detta som unika poster eftersom dom har olika v.logDate .. Men hur kan jag få detta att bara bli en
unik UserName ex,
Iduro
Annettew
Jonsson
Tripotaka
Extremt tacksam för all eventuell hjälp ...