You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在字符串的倒数第三位插入字符?

解决方案

问题根因

你之前的写法不生效是因为replace是全局替换函数,只要字符串里出现和最后两位相同的子串都会被替换,无法精准只修改末尾两位的位置。

推荐实现方式

方法1:数学运算(最简单高效,适用于数值类型输入)

你需要的效果本质是把最后两位转为小数位,直接除以100即可实现,比字符串操作性能更高、写法更简洁:

-- 适配你原有逻辑的写法,保留两位小数
round(round(v_num/2) / 100, 2)

如果需要输出为字符串格式,再加对应数据库的转字符串函数即可。

方法2:字符串切割(适用于字符串类型输入)

直接拆分数字为「除最后两位的前缀」和「最后两位的后缀」,中间拼接小数点,完全不会出现误替换问题:

-- 通用写法
substr(处理后的数字, 1, length(处理后的数字) - 2) || '.' || substr(处理后的数字, -2)

-- 适配你原有逻辑的写法
substr(round(v_num/2), 1, length(round(v_num/2)) - 2) || '.' || substr(round(v_num/2), -2)

内容的提问来源于stack exchange,提问作者John Al

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 09:15:00