webForumDet fria alternativet

Göra om till float

Databaser & SQL

5 svar · 474 visningar · startad av andreas_lindh

Medlem sedan jan. 20011 140 inlägg
Frågan#1

Jag har et fält av typ nvarchar som jag vil göra om till float när jag hämtar det. jag änvänder den här koden

cast(replace(gs.time,':','.') as float)

gs.time innehåller tex 12:45

Det fungerar men jag får inte med några decimaler. Går det att få med decimalerna och i så fall hur?

Medlem sedan dec. 20003 887 inlägg
#2

Är det punkt som är decimalavgränsare och inte komma?

Medlem sedan jan. 20011 140 inlägg
#3

Jag får felmeddelande när jag använder komma så det borde vara punkt

Medlem sedan dec. 20003 887 inlägg
#4

Jag testade

select cast(replace('12:45', ':', '.') as float)

och fick resultatet 12.49999999999

Medlem sedan jan. 20011 140 inlägg
#5

Det fungerade :)
Hade sparat 12:00 och då blev det ju bara 12.
Går det att få med nollorna?

Medlem sedan dec. 20003 887 inlägg
#6

Det är ju ett presentationsproblem, så det bör du lösa utanför databasen.

263 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)