Avatar billede tblaster Nybegynder
18. oktober 2006 - 20:05 Der er 5 kommentarer og
1 løsning

Trække 10 sorteret poster ud efter en bestemt post

Hejsa

Jeg skal have hjælp til at tweake mit sql udtræk en smule. Mit standard sql udtræk, hvor jeg trækker nogle poster ud sorteret, ser seledes ud:

Sql = "SELECT * FROM Data ORDER By Score/Stemmer Desc LIMIT 10"

Nu vil jeg så gerne kunne sende et ID med på en post i Data tabellen, eks ID = 1523, således at når den har sorteret mine poster, så skal den returner de 10 bedste poster efter posten med det angivet ID.

Hvordan kan jeg gøre dette uden at lave en asp løkke hvor jeg løber alle posterne igennem? Vil helst have en løsning hvor det er MySQL databasen der gør arbejdet. Hvis dette ikke kan lade sig gøre så søger jeg den mest optimale løsning der kan laves i ASP.

På forhånd tak.
Avatar billede jaw Nybegynder
18. oktober 2006 - 20:07 #1
Kan du ikke bare:

Sql = "SELECT * FROM Data WHERE id > sendt-id-felt ORDER By Score/Stemmer Desc LIMIT 10"

Nu har jeg ikke et hak forstand på ASP, så sendt-id-felt er selvf. det id-nummer (eks. 1523) du vil sende med.
Avatar billede tblaster Nybegynder
18. oktober 2006 - 21:25 #2
Tror ikke ovenstående vil virke (men er ikke sikker). Efter min vurdering vil en liste som:
ID: 1, Score/Stemmer = 6
ID: 2, Score/Stemmer = 7
ID: 3, Score/Stemmer = 9

Blive trukket ud som følgende, ved søning af id > 2:
ID: 3, Score/Stemmer = 9

Hvor den jo skulle komme ud som:
ID: 1, Score/Stemmer = 6
Avatar billede jaw Nybegynder
18. oktober 2006 - 21:37 #3
Hvordan kan et id på 1 være større end 2?
1 > 2 er falsk.

Måske jeg bare ikke forstår hvad du vil?
Avatar billede tblaster Nybegynder
18. oktober 2006 - 21:43 #4
Lad mig give et komplet eksempel. Tabellen indeholder eks. følgende poster:

ID: 1, Score/Stemmer = 6
ID: 2, Score/Stemmer = 7
ID: 3, Score/Stemmer = 9
ID: 4, Score/Stemmer = 4

Disse bliver så sorteret efter score og giver:
ID: 3, Score/Stemmer = 9
ID: 2, Score/Stemmer = 7
ID: 1, Score/Stemmer = 6
ID: 4, Score/Stemmer = 4

Nu vil jeg så have alle posterne ud, efter de er sorteret, som kommer efter posten med eks. id 2 i listen. Derfor skal jeg have en liste som:
ID: 1, Score/Stemmer = 6
ID: 4, Score/Stemmer = 2
Avatar billede tblaster Nybegynder
20. oktober 2006 - 16:53 #5
Er der virkelig ingen der kender til en måde jeg kan løse det på?
Avatar billede tblaster Nybegynder
21. oktober 2006 - 13:14 #6
lukker
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