---
title: "Decimalerna försvinner..."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/72608-decimalerna-försvinner"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "joup"
published: "2003-03-30T16:02:25.000Z"
updated: "2003-03-31T11:14:15.000Z"
replies: 7
views: 347
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/72608-decimalerna-försvinner"
---

# Decimalerna försvinner...

## #1 — joup, 2003-03-30T16:02Z

Jag har följande SQL-sats som skall plocka ut ett medelbetyg från en massa röster.

```
SQL = "SELECT s.id, s.namn, AVG(m.betyg) as medel, count(betyg) as antal FROM spel as s INNER JOIN medlem_spel as m ON s.id = m.spel WHERE m.betyg > 0 GROUP BY s.id ORDER BY medel DESC limit 20"
```

Koden fungerar perfekt, förutom problemet att när jag sedan skriver ut "medel"  på sidan, så blir det inga decimaler alls. Vad beror detta på?

Kör jag scriptet på min IIS hemma fungerar det perfekt, men när jag slänger upp koden på webhotellet så blir det inga decimaler.

Jag använder mig av ASP/VBScript samt MySQL.

Permalänk: https://www.webforum.nu/p/72608

## #2 — @nders, 2003-03-31T04:56Z

<http://www.webforum.nu/showthread.php?s=&threadid=60527>

mvh

Permalänk: https://www.webforum.nu/p/994323

## #3 — joup, 2003-03-31T08:30Z

Får det ändå inte att fungera, koden ser ut så här i sin helhet:

```
<%
Set Connection = Server.CreateObject("ADODB.Connection")
DSNtemp = "driver={MySQL};SERVER=www.aleborg.info;DNS=xxx;DATABASE=xxx;UID=xboxse1;PWD=xxxx;option=16384;" 
Connection.Open DSNtemp

SQL = "SELECT s.id, s.namn, AVG(m.betyg) as medel, count(betyg) as antal FROM spel as s INNER JOIN medlem_spel as m ON s.id = m.spel WHERE m.betyg > 0 GROUP BY s.id ORDER BY medel DESC limit 20"
Set RS = Server.CreateObject("ADODB.Recordset")
RS.Open SQL, Connection

ant = 1
Do until RS.EOF or ant>10

antal = cint(RS("antal"))
if antal>2 then
%>

<%=ant%>. <%=RS("namn")%> (Betyg: <%=RS("medel")%>, baserat på <%=antal%> röster)<br><br>

<%
ant = ant + 1
end if
RS.MoveNext
Loop
Set RS = Nothing
Set Connection = Nothing
%>
```

Problemet är alltså att RS("medel") inte får några decimaler, utan blir bara ett heltal (typ 9 istället för 9,2)

Permalänk: https://www.webforum.nu/p/994424

## #4 — aleborg, 2003-03-31T08:49Z

Det ska räcka med "option=16387", i kopplingen, men det gör det inte för jonas! 
Alternativet är ju DSN-koppling, ända skillnaden som görs där är att man sätter "Don't use setlocal"

Permalänk: https://www.webforum.nu/p/994451

## #5 — OveRRidE, 2003-03-31T08:53Z

Funktionen AVG() returnerar inte decimaler, enligt min 1200-sidiga bok till MSSQL-server 2000, det har med casting att göra. Jag vet inte hur det är i mySQL dock. 

Jag gissar lite, testa detta:

```
SQL = "SELECT s.id, s.namn, CAST(AVG(m.betyg) as Decimal) as medel, count(betyg) as antal FROM spel as s INNER JOIN medlem_spel as m ON s.id = m.spel WHERE m.betyg > 0 GROUP BY s.id ORDER BY medel DESC limit 20"
```

LarsG har nog mer koll på detta. :)

RED. Fast vid närmare eftertanke, det tillkommer nog inga decimaler efter att AVG har körts ändå, så det kommer nog inte fungera. :l

Permalänk: https://www.webforum.nu/p/994455

## #6 — joup, 2003-03-31T09:10Z

Nix, det fungerade inte. Det konstiga är att jag inte får några decimaler även om jag byter ut AVG(m.betyg) mot t.ex. sum(m.betyg)/count(betyg). Så det verkar inte vara AVG som spökar heller.

Permalänk: https://www.webforum.nu/p/994468

## #7 — voigtann1, 2003-03-31T10:39Z

Kan du inte kolla på hur andra har gjort det? typ <http://www.gruvsjo.com/>,<http://www.joakimweb.com/> eller någon annan bra ASP sida... detta hjälper dej kanske inte..

Permalänk: https://www.webforum.nu/p/994543

## #8 — hammers, 2003-03-31T11:14Z

Hade samma problem.
Det försvann dock när jag bytte ut

```
RS.Open SQL, Connection
```

mot

```
Set RS = Connection.Execute(SQL)
```

har dock ingen aning om varför  :o

Permalänk: https://www.webforum.nu/p/994583

---

Tråden på webben: https://www.webforum.nu/amne/asp/72608-decimalerna-försvinner
