Sql server 尝试将字符串列转换为浮点列时出错
我有一张a列的桌子。 我想将数据类型从string更改为float。 我的A列如下所示:Sql server 尝试将字符串列转换为浮点列时出错,sql-server,string,type-conversion,Sql Server,String,Type Conversion,我有一张a列的桌子。 我想将数据类型从string更改为float。 我的A列如下所示: A 143 1,440 19,630 12 。。。 当我尝试运行代码时: ALTER TABLE [Table1] ALTER COLUMN [A] FLOAT 我总是会遇到这样的错误: Error converting data type varchar to float. 很明显,varchar值没有转换成float。由于,不允许在int、float、decimal类型值中使用,因此首先需要替换,
A
143
1,440
19,630
12
。。。
当我尝试运行代码时:
ALTER TABLE [Table1]
ALTER COLUMN [A] FLOAT
我总是会遇到这样的错误:
Error converting data type varchar to float.
很明显,
varchar
值没有转换成float
。由于,
不允许在int、float、decimal
类型值中使用,因此首先需要替换,
你可以试试这个
update table set A = Replace( A, ',', '' )
或
无论哪种情况更适合你
之后,转换您的列
ALTER TABLE [Table1]
ALTER COLUMN [A] FLOAT
数字没有逗号。使用
REPLACE
删除第一个。sql Server使用点
而不是逗号,
表示浮点数,因此必须先替换这些浮点数
ALTER TABLE [Table1]
ALTER COLUMN [A] FLOAT