Avatar billede jensen2005 Nybegynder
04. januar 2012 - 09:28 Der er 7 kommentarer og
1 løsning

Hjælp med SQL

Hej eksperter

Hvordan kan det være at jeg i SQL'en herunder får f.eks. 66,00 og ikke 66,6677.

Mange mange tak for hjælpen

Venlig hilsen
Jensen2005

CAST(SUM(CASE sp7 WHEN '1' THEN 1 ELSE 0 END) * 100 / COUNT(*) AS DECIMAL(10, 2)) AS SP7ja,
Avatar billede webweaver Praktikant
04. januar 2012 - 10:47 #1
Hvis du skriver ... AS DECIMAL(10, 4)) AS ... hvad kommer den så ud med?
Avatar billede jensen2005 Nybegynder
04. januar 2012 - 10:58 #2
Sorry det er ikke det jeg mener.

Jeg mener hvorfor den runder ned(66,00) i stedet for at skrive(66,66)?
Avatar billede webweaver Praktikant
04. januar 2012 - 11:22 #3
Det er fordi der er "trailing zeroes" i formateringen.

Prøv at lave det om til float.

CAST(SUM(CASE sp7 WHEN '1' THEN 1 ELSE 0 END) * 100 / COUNT(*) AS DECIMAL(10, 2)) AS float

http://stackoverflow.com/questions/2938296/remove-trailing-zeros-from-decimal-in-sql-server
Avatar billede jensen2005 Nybegynder
04. januar 2012 - 12:56 #4
Æv det virker heller ikke :)
Avatar billede jensen2005 Nybegynder
04. januar 2012 - 13:34 #5
Fandt en løsning:


CAST( ROUND (CAST(SUM(CASE sp7 WHEN '1' THEN 1 ELSE 0 END) * 100 AS DECIMAL(10, 2)) / COUNT(*), 0  ) AS DECIMAL(10,0)  ) AS SP7ja,
Avatar billede jensen2005 Nybegynder
04. januar 2012 - 13:34 #6
WEBweaver lig et svar så du kan få dine point...
Avatar billede arne_v Ekspert
04. januar 2012 - 14:50 #7
Hvad med:

CAST(SUM(CASE sp7 WHEN '1' THEN 1 ELSE 0 END) * 100.0 / COUNT(*) AS DECIMAL(10, 2)) AS SP7ja

?

(jeg har aendret 100 til 100.0)
Avatar billede webweaver Praktikant
04. januar 2012 - 18:40 #8
Godt, at du fik det til at virke :-)

Du kan jo lige smide nogle point efter arne_v også!
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