我正在尝试转换/强制转换一串科学记数法(例如,'9.62809864308e-05')到SQL中的浮点数。
我尝试了标准方法:CONVERT(FLOAT, x)其中x = '9.62809864308e-05',但它返回错误消息:未实现的固定字符转换函数- bpchar_float:2585.
我所做的很简单。我的表有2列:ID和rate (rate是我试图转换为float的字符串科学符号)。我在表中添加了第三列,并尝试用x的float表示填充第三列:
UPDATE my_table
SET 3rd_column = CONVERT(FLOAT, 2nd_column)
2nd_column
的数据类型为CHAR(20)
此外,并不是每个字符串浮点数都是科学记数法——有些是普通浮点数法。所以我想知道是否有一个内置的功能可以处理所有这些。
谢谢!
对于浮点数x的任何字符串表示形式,我们设x = '0.00023'或x = '2.3e-04'
CONVERT(FLOAT, x)将x的数据类型从char (string)转换为FLOAT。
它不能为我工作的原因是我的字符串包含空格。