Avatar billede kagge Nybegynder
16. oktober 2002 - 08:32 Der er 8 kommentarer og
1 løsning

Vis de 10 første poster af søgestreng

Jeg har nedenstående kode:

strSQL46 = "SELECT Spm_titel, Antal_registreringer from Data d ORDER BY d.Antal_registreringer DESC"

recordSet.Open strSQL46, forbindelse, adOpenStatic, adLockReadOnly, adCmdText

  response.write "<table width=""100%"" border=1 "
  response.write "style=""font-family:helvetica; font-size:8pt;"">" & vbCrLf
  response.write vbTab & "<tr>" &vbCrLf

Do While recordSet.BOF = FALSE AND recordSet.EOF = FALSE
  response.write vbTab & "<tr>" & vbCrLf

c1 = "#FFFFFF"
For i = 0 to recordSet.Fields.Count -1
response.write vbTab & vbTab & "<td bgcolor=""" & c1 & """>" & recordSet.Fields(i) & "</td>" & vbCrLf

NEXT

    response.write vbTab & "</tr>" & vbCrLf
    recordSet.Movenext
Loop


recordSet.Close


Set recordSet = Nothing

forbindelse.close

Set forbindelse = Nothing

response.write "</table>" & vbCrLf

Hvordan omskriver jeg ovenstående løkke, så jeg kun får udskrevet de 10 første poster? Som det er nu udskriver den jo alle databasens poster.
Avatar billede bitmand Nybegynder
16. oktober 2002 - 08:33 #1
Indsætter en LIMIT 10 i SQL'en, som dette:
strSQL46 = "SELECT Spm_titel, Antal_registreringer from Data d ORDER BY d.Antal_registreringer DESC LIMIT 10"
Avatar billede eagleeye Praktikant
16. oktober 2002 - 08:35 #2
Og hvis det så er Access du bruger som database så det TOP 10 i sQL'en.:

strSQL46 = "SELECT TOP 10 Spm_titel, Antal_registreringer from Data d ORDER BY d.Antal_registreringer DESC"
Avatar billede kagge Nybegynder
16. oktober 2002 - 08:50 #3
Mærkeligt: Nu har jeg redigeret ovenstående kode så jeg har sat "TOP 10" i min søgestreng

Hvordan kan det være jeg nu får udtrukket 36 poster!
Avatar billede kagge Nybegynder
16. oktober 2002 - 08:51 #4
Der er ca. 600 poster i databasen....
Avatar billede kagge Nybegynder
16. oktober 2002 - 09:07 #5
Kan det være fordi:

Den første post der kommer ud der er "Antal_registreringer" = 3
De efterfølgende 35 poster har alle sammen "antal_registreringer" = 2
Avatar billede eagleeye Praktikant
16. oktober 2002 - 09:07 #6
muligvis for den tager 10 unikker fra d.Antal_registreringer prøv evt at tilføje en autonummer kolonne til order by

strSQL46 = "SELECT TOP 10 Spm_titel, Antal_registreringer from Data d ORDER BY d.Antal_registreringer DESC, ID DESC"
Avatar billede eagleeye Praktikant
16. oktober 2002 - 09:09 #7
Ja det er derfor.
Avatar billede eagleeye Praktikant
16. oktober 2002 - 09:09 #8
eller tilføje GROUP BY id:

strSQL46 = "SELECT TOP 10 Spm_titel, Antal_registreringer from Data d GROUP BY id ORDER BY d.Antal_registreringer DESC"
Avatar billede kagge Nybegynder
16. oktober 2002 - 09:13 #9
Det var derfor! Nu får jeg kun udtrukket 10 poster. Mange tak skal du have
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