webForumDet fria alternativet

Decimaler och databas.

ASP

12 svar · 460 visningar · startad av ConnyFox

Medlem sedan aug. 20011 087 inlägg
Frågan#1

jag har ett fält i min databas (MySQL) som jag fyller med t.ex 1,7 eller 5,2

när jag sedan kör en sql fråga för att räkna ut summan på detta med sum() så räknar den inte med decimalerna.

Byter jag ut mot 1.7 och 5.2 så fungerar det men inte med ett komma. varför? När jag sedan skriver ut summan på min sida så står det med komma t.ex 6,9..

Fältet i fråga är ett textfält, går detta att lösa på något vis?

Medlem sedan juni 200032 967 inlägg
#2

Det finns ingen som helst anledning till att spara tal i textfält.
Byt till rätt datatyp, så fungerar räknefunktionerna i SQL.

Medlem sedan aug. 20011 087 inlägg
#3

vad är rätt då?

Medlem sedan juni 200032 967 inlägg
#4

Decimal till exempel. http://dev.mysql.com/doc/mysql/en/Numeric_types.html

Medlem sedan aug. 20011 087 inlägg
#5

ja men då går det ju fortfarande inte att lägga in 1,5 7,2 osv utan det måste vara i formatet 1.5 och 7.2.. aja

Fixar det med en replace istället.

Medlem sedan juni 200032 967 inlägg
#6

Ja, absolut. Man använder decimalpunkt i SQL-frågor. Varför vill du spara med kommatecken?

Medlem sedan aug. 20011 087 inlägg
#7

löste det med en replace istället.

Medlem sedan juni 200032 967 inlägg
#8

ConnyFox skrev:

löste det med en replace istället.

Bra, för det ska man. :)

Medlem sedan aug. 20011 087 inlägg
#9

Fortsätter i samma tråd istället för o skapa en ny.

Hur omvandlar man tid i detta formatet 1,5 timmar (dvs 1 timme och 30min eller 90 minuter om man så vill) till timmar och minuter?

Medlem sedan maj 2002560 inlägg
#10
Var = "1,5"
Response.Write WeoWeo(Var,0)&"<br/>"&WeoWeo(Var,1)

Function WeoWeo(nbr,t)
	If nbr = "" Then Exit Function
	Select Case t
		Case 0
			WeoWeo = ("0"&Right(nbr,InStr(nbr,",")))*60
			WeoWeo = Mid(nbr,1,InStr(nbr,",")-1)&" Timma(r) "&WeoWeo&" Minut(er)"
		Case Else
			WeoWeo = nbr*60&" Minut(er)"
	End Select
End Function
Medlem sedan aug. 20011 087 inlägg
#11

Hmm det där scriptet funkar bra när det ligger i en separat fil men när jag lägger det i mina filer så vill det bara inte fungera.. konstigt..

Försökt att includera själva funktionen och sedan köra weoweo på mina egna strängar men det har inte fungerat det heller..

Medlem sedan aug. 20011 087 inlägg
#12

Löste det till slut med en annan funktion

Medlem sedan juni 200032 967 inlägg
#13

ConnyFox skrev:

Löste det till slut med en annan funktion

Hur ser den funktionen ut då?

254 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)