SQL新手求助:在SSMS中永久替换varchar字段的逗号为点并查看影响行数
永久替换SQL表中字段的逗号为点
针对你用SSMS修改HoursSpent字段(varchar类型)的需求,直接用UPDATE语句就能实现永久替换,步骤如下:
1. 先确认待修改的行(可选但推荐)
先执行查询,确认所有包含逗号的行,避免误改无关数据:
SELECT HoursSpent FROM 你的表名 WHERE HoursSpent LIKE '%,%';
这个查询会列出所有需要修改的记录,你可以核对数量是否和预期的22行一致。
2. 执行永久更新
运行下面的UPDATE语句,把字段里的逗号替换成点:
UPDATE 你的表名 SET HoursSpent = REPLACE(HoursSpent, ',', '.') WHERE HoursSpent LIKE '%,%';
执行后SSMS的消息窗口会显示类似(22 rows affected)的提示,说明修改完成。
补充建议
- 操作前务必备份数据,防止意外操作导致数据丢失
- 如果后续需要对这个字段做数值计算,建议把字段类型改成数值型(比如
DECIMAL),避免反复处理格式:
ALTER TABLE 你的表名 ALTER COLUMN HoursSpent DECIMAL(10,2);
注意:执行这个语句前要确保所有HoursSpent的值都是合法的数值格式(替换后的点格式),否则会报错。
示例数据
原数据:
HoursSpent 8,3 1,55 2,6 7,2
修改后预期结果:
HoursSpent 8.3 1.55 2.6 7.2
内容的提问来源于stack exchange,提问作者Duvan_K
相关产品推荐
相关产品推荐

