Avatar billede goose Nybegynder
07. august 2002 - 21:15 Der er 7 kommentarer og
2 løsninger

"select top" men ikke gengangere ?

Jeg bruger følgende til at vise overskriften på de 3 sidst diskuterede emner i et debatforum:

SQLdebat = "select top 3 * from debat_tread order by dato DESC"
set rsdebat = conn.execute(SQLdebat)

Det virker også fint, men hvis de 3 sidste indlæg er i samme tråd, ja så vises samme overskrift i alle 3 linier, hvordan undgår jeg dette ?!?
Jeg vil gerne have at det er 3 forskellige overskrifter der vises.

/Goose
Avatar billede snowball Novice
07. august 2002 - 21:16 #1
Prøv med

select distinct top 3 * from debat_tread order by dato DESC

Snowball
Avatar billede dadane Novice
07. august 2002 - 21:21 #2
Det er nok heller ikke godt nok da de kan være DISTINCT (altså forskellige) på andre felter end overskriften.

Jeg vil nok prøve med

SELECT TOP 3 * FROM debat_tread ORDER BY dato DESC GROUP BY topic

eller måske blot

SELECT * FROM debat_tread ORDER BY dato DESC

og så lave resten i ASP. Det bliver ikke meget "dyrere" med mindre du forventer at have nogle meget voldsomme tråde med mange nye indlæg
Avatar billede dadane Novice
07. august 2002 - 21:21 #3
Måske kan det endda bruges som svar
Avatar billede goose Nybegynder
07. august 2002 - 21:31 #4
snowball: det havde jeg prøvet, det tager 7 år og en madpakke og serveren går total død.

dadane: Det samme gælder med din GROUP BY løsning, "lave resten i ASP" forstår jeg ikke ?

Databasen er access og der er pt. omkring 2300 indlæg og er hastigt stigende.

/Goose
Avatar billede bocker Nybegynder
07. august 2002 - 21:31 #5
Mener nu group by skal før order by? Kan aldrig huske det. Men hvad siger i til SELECT TOP 3 DISTINCT topic FROM debat_traad ORDER BY dato DESC ?
Avatar billede bocker Nybegynder
07. august 2002 - 21:34 #6
hm hvordan er dit forum opbygget? lad os lige se den... Den må være online, med så mange indlæg ;)
Avatar billede goose Nybegynder
07. august 2002 - 22:01 #7
bocker: mit forum er opbygget således, at alle besvarelser i en tråd har samme overskrift som det oprindelige indlæg og derudover en reference til id nummeret på det oprindelige indlæg. Derfor dur din løsning heller ikke da jeg så godt nok vil få forskellige overskrifter, men ikke har mulighed for at linke direkte til det aktuelle indlæg da jeg ikke får id nummeret med i udtrækket, og derudover tager også dette en krig, jeg tror der går et eller andet galt når man bruger TOP 3 og DISTINCT på samme tid men er ikke sikker.
Forummet er desværre ikke offentlig tilgængeligt.

/Goose
Avatar billede goose Nybegynder
18. august 2002 - 12:46 #8
Jeg fik det ikke til at virke ordentligt, min database er nok bygget forkert op, men jeg har delt pointene mellem jer som tak for jeres initiativ.

/Goose
Avatar billede grace45 Nybegynder
25. oktober 2010 - 14:48 #9
Hej mit navn er nåde er fra Liberia land rart at møde dig min kære jeg vil elske at vide mere om dig min e-mail er (graced_11dabah@yahoo.com)
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
Kurser inden for grundlæggende programmering

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