基于字符串中位置的SQL替换值
我有一个列,其中的值都是这种格式“----”我需要将所有值的格式设置为第二个到最后一个连字符替换为句点“----” 我可以根据字符串中的位置使用REPLACE吗 例如,将“068-27-0-40-12-012-00-0”更改为“068-27-0-40-12-012.00-0”大多数数据库支持左和右,在不支持左和右的数据库中,可以使用substr/substring达到相同的效果。因此:基于字符串中位置的SQL替换值,sql,sql-server,replace,Sql,Sql Server,Replace,我有一个列,其中的值都是这种格式“----”我需要将所有值的格式设置为第二个到最后一个连字符替换为句点“----” 我可以根据字符串中的位置使用REPLACE吗 例如,将“068-27-0-40-12-012-00-0”更改为“068-27-0-40-12-012.00-0”大多数数据库支持左和右,在不支持左和右的数据库中,可以使用substr/substring达到相同的效果。因此: select left(col, 19) || '.' || right(col, 4) 您的数据库可能更喜
select left(col, 19) || '.' || right(col, 4)
您的数据库可能更喜欢不同的连接运算符/函数。假设您在sql server中,请使用STUFF方法完成工作 选择物品'---',19,1'.' 第一个参数-字符表达式 第二个参数-从第n个位置开始 第三个参数-要更换的位置数量
第四个参数-要替换的字符串用您正在使用的数据库标记您的问题。样本数据也会有所帮助。
select left([ColumnName], 19) + '.' + right([ColumnName], 4);