14. september 2005 - 18:18Der er
4 kommentarer og 1 løsning
Brug af DISTINCT
Jeg forstår ikke DISTINCT "funktionen".
Eksempel:
SELECT ed_users.*,ed_log.timestamp as lastlogin,DISTINCT ed_log.uid FROM ed_users,ed_log
Denne forespørgsel giver syntax error.
Jeg mente nu ellers jeg engang, ved en tidligere MySQL version kunne sige SELECT *,DISTINCT field FROM. Hvordan skal jeg så vælge hvad som skal være DISTINCT?
Problemet er at jeg henter brugere fra én tabel og sidste login fra en anden. Men når jeg henter logins henter den samtlige logins. Hvis jeg siger GROUP BY uid, henter den det første login, selvom jeg har en ORDER BY timestamp DESC.
Distinct fjerner duplikater - dvs. der fjernes rækker fra dit resultatset som optræder mere end 1 gang. Jeg mener ikke du kan anvende den som du først beskriver.
Du kan også anvnede distinct i aggregeringer .- f.x. en count:
Select a, count(distinct b) from T group by a
Til løsning af dit prb. kunne du evt. anvende max funktion på login: i til med: Select B.BrugerNavn, Max(L.logintid) From BrugerTabel B inner join Logins L on b.brugerid=L.brugerid Group By b.brugernavn
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.