Можете да конвертирате varchars в floats и можете да го направите по начина, който сте изразили. Вашият varchar не трябва да е числова стойност. Трябва да има нещо друго в него. Можете да използвате IsNumeric, за да го тествате. Вижте това:
declare @thing varchar(100)
select @thing = '122.332'
--This returns 1 since it is numeric.
select isnumeric(@thing)
--This converts just fine.
select convert(float,@thing)
select @thing = '122.332.'
--This returns 0 since it is not numeric.
select isnumeric(@thing)
--This convert throws.
select convert(float,@thing)