Avatar billede moore Nybegynder
28. januar 2002 - 12:23 Der er 5 kommentarer og
1 løsning

Select Problem

Hej

Efter at jeg har fået svar på nogle af mine spørgsmål herinde som prøver jeg lige igen.

Det som jeg har problemer med at lave er :

Når man logger sig ind på en side (rangliste.asp) fra en login side(login.asp), så skal ens placering vises med fed skrift og de 5 over en og 5 under en.

Dem som skal vises over en, skal selvfølgelig være dem med en bedre score og dem under en med en score mindre end en selv..... logik :))

Ved siden af de 5 over og under en skal der være et link videre til en ny .asp side.

I DB'en har jeg en kolonne som hedder " Score " og som ligger i Tabellen " Medlemmer ".

Er det mig eller er det bare så svært at finde ud af??

Håber der er nogle som kan hjælpe mig.

/Thomas
Avatar billede proaccess Nybegynder
28. januar 2002 - 12:42 #1
For at liste de fem over og under kan du bruge følgende SQL:

SELECT TOP 5 Score, Navn FROM Medlemmer WHERE Score>=xxxx AND UserID<>yyyy ORDER BY Score DESC UNION SELECT TOP 5 Score, Navn FROM Medlemmer WHERE Score<=xxxx AND UserID<>yyyy ORDER BY Score ASC;

Hvor xxxx er aktuel brugers Score og yyyy er aktuel brugers UserID...
Avatar billede moore Nybegynder
28. januar 2002 - 13:03 #2
Nu skriver du at xxxx er brugerens aktuelle score. Men hvordan får jeg den vist, da den jo hele tiden varierer.??

For at få vist scoren (xxxx) skal jeg så skrive objrs("score").. for det hjælper vil ikke??.. eller???

Den sql sætning du gav (takker).. kan den ikke bruges på følgende måde..

EX..

response.write "Her er en liste over dem som ligger over dig.."

SELECT TOP 5 Score, Navn FROM Medlemmer WHERE Score>=xxxx AND UserID<>yyyy ORDER BY Score DESC UNION

response.write "En liste over dem som er UNDER dig..."

SELECT TOP 5 Score, Navn FROM Medlemmer WHERE Score<=xxxx AND UserID<>yyyy ORDER BY Score ASC

EX slut.

Eller skal den sql sætning være éen lang???
Avatar billede proaccess Nybegynder
28. januar 2002 - 13:09 #3
Jo, du har ret mht opdeling af SQL'en...

Den aktuelle bruger og score henter du ved login... Som jeg forstod det ud fra dit spørgsmål... (Du henter scoren sammen med login-name)
Avatar billede moore Nybegynder
28. januar 2002 - 13:16 #4
ok.. sorry.. jeg har vist formuleret mig forkert..

Det eneste som kommer med over ved login er ID og Fornavn. Men det vil måske være en god idé at hente score med over også.???
Eller bliver det ikke noget værre rod???

Men hvordan får jeg så den aktuelle score i den SQL sætning du fyrede af?? :)

*G* nu skrev du at jeg havde ret ang. den sql sætning... var det i mit exempel eller at det skal være EN lang...

Nu har jeg lige siddet med at når man logger sig på så står man med fed skrift, kan man i selve SQL sætningen gøre sådan at man ex.står i midten af dem som er over og under en, og man har fed skrift.???

Takker igen for hjælpen..

PS: jeg er lidt af en nybeynder i ASP osv.. Som du nok kan høre på mit spørgsmål *G*
Avatar billede proaccess Nybegynder
28. januar 2002 - 13:24 #5
Samtidig med at du henter fornavn, henter du også aktuel score, for den skal du jo bruge for at kunne hente de 5 før og efter (ellers er det jo før og efter noget ukendt)

Du har ret i at det opbygningsmæssigt bedst kan betale sig at opdele sql'en i to...

Først henter du dem FØR, så angiver du fed skrift og skriver aktuel score og fornavn (fra log-in), så angiver du igen normal-skrift og henter dem EFTER...

Jeg kan desværre ikke gå ind i html-koder og asp-opbygning, men det er DEN vej jeg ville gå...
Avatar billede moore Nybegynder
28. januar 2002 - 13:28 #6
jeg prøver mig frem.. takker .....
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