Avatar billede orca Nybegynder
20. september 2007 - 21:20 Der er 8 kommentarer og
2 løsninger

Optimal DISTINCT forespørgsel

Jeg har en tabel:

ID | Created
1  | Dato
2  | Dato
2  | Dato
2  | Dato
3  | Dato
4  | Dato
.  | Dato

Hvordan laver jeg mest effektivt et udtræk over top 5 distinct ID's sorteret efter datoen? Jeg kan nemt lave det via en subquery, men det må simpelthen være muligt at lave det direkte da det andet er håbløst ineffektivt.
Avatar billede dr_chaos Nybegynder
20. september 2007 - 21:36 #1
Prøv med
SELECT TOP 5 ID, MAX(Dato) FROM Tabel GROUP BY ID ORDER BY MAX(Dato)
Avatar billede arne_v Ekspert
20. september 2007 - 21:38 #2
SELECT TOP 5 id,MAX(created) FROM tabel GROUP BY id ORDER BY MAX(created) DESC

eller

SELECT TOP 5 id,MAX(created) AS maxcreated FROM tabel GROUP BY id ORDER BY maxcreated DESC

masske
Avatar billede dr_chaos Nybegynder
20. september 2007 - 21:41 #3
Hmm skrev vidst det forkerte kolonne navn
Avatar billede orca Nybegynder
20. september 2007 - 23:00 #4
Tak for hjælpen begge, det virker perfekt. Jeg deler med fordel til dr_chaos da han kom med et fungerende svar først.
Avatar billede orca Nybegynder
20. september 2007 - 23:00 #5
Og det skulle så lige have været en opfording til at i begge skal smide svar :)
Avatar billede orca Nybegynder
20. september 2007 - 23:04 #6
Total execution time
48
49
55
39
36
40
779
805
788

Nyeste forespørgsler øverst. Det var vidst på tide jeg lige fik kigget på den query :)
Avatar billede arne_v Ekspert
21. september 2007 - 04:02 #7
.
Avatar billede dr_chaos Nybegynder
21. september 2007 - 09:38 #8
Svar :)
Avatar billede arne_v Ekspert
21. september 2007 - 15:16 #9
venstre venstre venstre stop ned ned stop nu er cirklen lige i sigtekornet

:-)
Avatar billede dr_chaos Nybegynder
21. september 2007 - 16:26 #10
Øv lærer det nok en dag :)
Svar :)
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