我有一个包含大约20K行数据的表。一个varchar列包含格式为$ xxx,xxx,xxx.00的货币信息。我想创建一个十进制类型的附加列,并将varchar数据复制到其中,显然在剥离$和时。
我玩过转换和转换,混合了修剪和替换功能,但还没有成功将它变成新列。
因为我们对数据进行了很多未来的计算,所以我们希望将其转换一次,而不是为每次计算转换它。
任何建议都将不胜感激!
提前谢谢!
- 肯特
答案 0 :(得分:1)
尝试替换$和','然后转换。你应该是好的
CONVERT(NUMERIC(28,4),REPLACE(REPLACE(stringColumn,'$',''),',',''))
SQL小提琴here。
答案 1 :(得分:0)
Select Cast(Replace(Replace(ColName, '$', ''), ',', '') as Money)