Avatar billede kunop Nybegynder
23. januar 2002 - 10:29 Der er 1 kommentar og
1 løsning

Division ved udtræk fra database

Jeg har lavet et pointsystem, hvor medlemmerne kan tilføje point i en database... Dernæst har vi en statistik side, der viser hvor mange point hver enkelt medlem har. Det jeg skal finde ud af, er hvordan man dividerer et medlems pointsum op i den totale pointsum, således at jeg kan se hvor mange procent hver medlem har stået for...

Jeg arbejder med en access database.

Jeg har et lille forslag som ikke virker, men som måske giver et overblik over hvad spørgsmålet går ud på:

"((SELECT Sum(Point) as procent1 from news where navn='Jannik') / (SELECT Sum(Point)from news)) *100"

Hvor min tabel hedder news, og Point og navn er et element heri.
Avatar billede keysersoze Ekspert
23. januar 2002 - 10:53 #1
Du er - som du rigtigt nok er inde på nødt til at lave to sql-sætninger, men lav dem hver for sig først;

SQL1 = "Select...navn='Jannik'"
SQL2 = "Select..."
rs1.execute (sql1)
rs2.execute (sql2)

og derefter kan du dividere du to resultater du får

procent = (rs1("point") / rs2("point")) * 100
Avatar billede coltau Juniormester
23. januar 2002 - 15:51 #2
Du skal nok først hente summen:

sql = "select Sum(Point) from new"
set RS = O.Execute(sql)
Sum = RS(0)

derefter kan du finde alle medlemmer og gennemkøre dem i en while-løkke og anvende variablen Sum.

sql = "select * from news"
set RS = O.Execute(sql)
Do while not RS.EOF do
  Value = 100 * RS("Point") / Sum ' Value i procent af summen
  ' Udskriv dette medlems oplysninger
  RS.Next
Loop
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