Avatar billede gamboa Nybegynder
14. marts 2006 - 11:32 Der er 4 kommentarer

problem med ORDER BY og SELECT DISTINCT

Hej
Jeg står for at lave et mindre forum og har et SQL problem som jeg ikke kan løse (har googlet ;) )

I den enkelte brugerprofil skal der være en liste over de 5 sidste tråde den pågældende bruger har deltaget i, sorteret efter dato, og for at den samme tråd ikke skal forekomme mere end 1 gang hvis brugeren har svaret flere gange bruger jeg SELECT DISTINCT, men eftersom jeg også skal bruge oprettelsestidspunktet til at sortere efter så kommer den samme tråd med flere gange da der jo så er et nyt "distinct" oprettelsestidspunkt for hvert svar.

Min kode (som altså generer det samme traadid flere gange pga starttidspunkt) er:

select distinct traadid,brugerid,overskrift,starttidspunkt from f_senestesvar where brugerid= "&brugerid&" order by starttidspunkt desc

Er der nogen der kender en workaround der kan få det til at virke?
Jeg bruger i øvrigt Access og ASP. Takker på forhånd :)
Avatar billede pgroen Nybegynder
14. marts 2006 - 11:56 #1
Hvis jeg har forstået dig ret, så prøv:

select traadid,max(starttidspunkt)
from f_senestesvar
where brugerid = "&brugerid&"
group by traadid
order by max(starttidspunkt) desc
Avatar billede gamboa Nybegynder
14. marts 2006 - 12:06 #2
Hvis jeg gør som du skriver får jeg:
Item cannot be found in the collection corresponding to the requested name or ordinal.
Jeg er ikke helt inde i hvordan max() virker, men jeg tror godt jeg kan se hvor det bærer hen ad ;)
Avatar billede pgroen Nybegynder
14. marts 2006 - 12:30 #3
Hmm.

Nu er jeg ikke access-haj, men jeg ved da at både max() og 'group by' skulle kunne lade sig gøre. Hvad nu hvis du dropper 'order by max(starttidspunkt) desc'?
Avatar billede gamboa Nybegynder
14. marts 2006 - 12:51 #4
Den skriver det samme igen. Måske det bare ikke kan lade sig gøre i Access, så jeg må lave en løsning i ASP'en som tjekker for gentagne traadid'er på en eller anden måde.
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester