Recent PostsRecent Posts Popular TopicsPopular Topics
 Home Search Members Calendar Who's On

 Problem in converting float to varchar Rate Topic Display Mode Topic Options
Author
 Message
 Posted Tuesday, October 21, 2008 2:47 AM
 SSC Rookie Group: General Forum Members Last Login: Tuesday, April 24, 2012 10:07 AM Points: 37, Visits: 114
 The following query truncates the decimal characters when we convert it to varchar.declare @d floatdeclare @d1 floatselect @d = 34343.454select @d1 = 676.1566545select cast (@d as varchar(50)) + CHAR (9) + cast (@d1 as varchar(50))ouput:34343.5 676.157but the required output is:34343.454 676.1566545Can anyone help to find a best solution for this ?Thanks in advance.
Post #589007
 Posted Tuesday, October 21, 2008 2:53 AM
 SSCrazy Group: General Forum Members Last Login: Wednesday, March 19, 2014 1:43 AM Points: 2,020, Visits: 2,515
 I tried the below codedeclare @d floatdeclare @d1 floatselect @d = 34343.454select @d1 = 676.1566545select cast (@d as varchar(50))select cast (@d1 as varchar(50))I got the below output.34343.453999999998676.15665449999995 karthik
Post #589011
 Posted Tuesday, October 21, 2008 5:43 AM
 Old Hand Group: General Forum Members Last Login: Wednesday, January 22, 2014 3:07 AM Points: 329, Visits: 468
 aravind (10/21/2008)The following query truncates the decimal characters when we convert it to varchar.declare @d floatdeclare @d1 floatselect @d = 34343.454select @d1 = 676.1566545select cast (@d as varchar(50)) + CHAR (9) + cast (@d1 as varchar(50))ouput:34343.5 676.157but the required output is:34343.454 676.1566545Can anyone help to find a best solution for this ?Thanks in advance.`declare @d floatdeclare @d1 floatselect @d = '34343.454'select @d1 = 676.1566545select cast(cast (@d as decimal(12,3)) as varchar(20)) + CHAR (9) + cast(cast (@d1 as decimal(12,3)) as varchar(20))` MadhivananFailing to plan is Planning to fail
Post #589074
 Posted Tuesday, October 21, 2008 11:38 PM
 SSCarpal Tunnel Group: General Forum Members Last Login: 2 days ago @ 10:48 PM Points: 4,570, Visits: 8,317
 aravind (10/21/2008)Can anyone help to find a best solution for this ?Thanks in advance.I can.Simply by opening BOL on related topic.
Post #589593
 Posted Thursday, October 23, 2008 7:36 AM
 SSC Rookie Group: General Forum Members Last Login: Tuesday, April 24, 2012 10:07 AM Points: 37, Visits: 114
 Hi Madi,The output wont be the one I expected. The decimal should not get truncated.
Post #590440
 Posted Thursday, October 23, 2008 7:48 AM
 Old Hand Group: General Forum Members Last Login: Wednesday, January 22, 2014 3:07 AM Points: 329, Visits: 468
 aravind (10/23/2008)Hi Madi,The output wont be the one I expected. The decimal should not get truncated.Here it is`declare @d floatdeclare @d1 floatselect @d = '34343.454'select @d1 = '676.1566545'select cast(cast (@d as decimal(12,3)) as varchar(20)) + CHAR (9) + cast(cast (@d1 as decimal(18,7)) as varchar(20))` MadhivananFailing to plan is Planning to fail
Post #590448

 Permissions