Avatar billede gatez Nybegynder
04. juli 2003 - 14:39 Der er 10 kommentarer og
1 løsning

Snit i MySql

Hejsa,
Beklager jeg ikke har mere en 10 point :-)

Virker det her ikke i MySQL ?
Den regner godt nok et snit ud men kun i en desimal, altså fx.: 5 og ikke 5,67
Hvad skal ændres ?

Set rs = Conn.Execute("SELECT avg(Stemmer) as snit from bilpoll WHERE BilID = '" & intID_Bil & "'")
strStemmerSnit =left(RS("Snit"), 4)
strStemmerSnitEnD =left(RS("Snit"), 1)
rs.Close

MVH
Gatez
Avatar billede netro Nybegynder
04. juli 2003 - 15:32 #1
Snit = FormatNumber(rs("snit"), 2)
Avatar billede netro Nybegynder
04. juli 2003 - 15:34 #2
Du kan også gøre det direkte i SQL'en:

Set rs = Conn.Execute("SELECT Round(avg(Stemmer), 2) as snit from bilpoll WHERE BilID = '" & intID_Bil & "'")
Avatar billede gatez Nybegynder
04. juli 2003 - 15:58 #3
Når jeg bruger:
Snit = FormatNumber(rs("snit"), 2)

Så skriver den det ud sådan: 5,00
Lige meget hvad gennemsnittet er så skriver den ,00 efter...

Med denne kode:
Set rs = Conn.Execute("SELECT Round(avg(Stemmer), 2) as snit from bilpoll WHERE BilID = '" & intID_Bil & "'")
Der skriver den stadig bare: 5
Og ikke flere desimaler.
Avatar billede gatez Nybegynder
04. juli 2003 - 16:00 #4
Jeg forstår det bare ikke...
Er det mon fordi MySql ikke understøtter "as snit"  ??
Avatar billede netro Nybegynder
04. juli 2003 - 16:05 #5
Nej, men hvad skal snittet da være?

Jeg ved faktisk ikke om AVG-funktionen kun returnerer hele tal.
Ser på det lidt senere :)
Avatar billede gatez Nybegynder
04. juli 2003 - 16:07 #6
Snittet skal være fx. 5.76

Det er fra et stemme system hvor brugerene kan stemme på nogle ting.
De kan give en stemme fra 1-10.
Avatar billede gatez Nybegynder
04. juli 2003 - 16:08 #7
Hov... Jeg glemte helt at sige 10000 tak for hjælpen hvis du gider kigge lidt på det :-)
Avatar billede netro Nybegynder
04. juli 2003 - 16:18 #8
AVG-funktionen kan sagtens returnere decimal-tal. Ved ikke hvorfor jeg kom i tvivl om det.

Nå, men har du prøvet at regne det faktiske snit ud? Det kan jo være, at det er 5...?!

Set rs = Conn.Execute("SELECT Count(Stemmer) as SamletAntal, Sum(Stemmer) As SamletSum from bilpoll WHERE BilID = '" & intID_Bil & "'")

Snit = FormatNumber(SamletSum / SamletAntal, 2)
Avatar billede netro Nybegynder
04. juli 2003 - 16:19 #9
Hvorfor er jeg hele tiden ved at skrive "shit" i stedet for? :o)
Avatar billede gatez Nybegynder
06. juli 2003 - 21:09 #10
Virker bare ik...

Jeg har sat 20 stemmer på et id nu... Dvs. at den burte skrive det i desimaler men det gør den ikke den skriver bare 6,00
Hvor den burde skrive 6,87

Hjælp :-)
Avatar billede gatez Nybegynder
06. juli 2003 - 21:59 #11
Det virker bare ikke... Ærligt
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