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

如何使用SQL正则函数去除列值前缀ARI7879提取剩余内容

SQL正则提取指定前缀后内容的实现方案

以下是不同主流数据库使用正则函数实现需求的写法,所有写法均通过^符号匹配字符串开头,只会替换位于首位的ARI7879前缀,不会误处理内容中间出现的相同字符:

1. MySQL / MariaDB

SELECT REGEXP_REPLACE(`Column`, '^ARI7879', '') AS _col0
FROM 你的表名;

2. PostgreSQL

写法1:前缀替换

SELECT REGEXP_REPLACE("Column", '^ARI7879', '') AS _col0
FROM 你的表名;

写法2:分组捕获

SELECT (REGEXP_MATCH("Column", '^ARI7879(.*)$'))[1] AS _col0
FROM 你的表名;

说明:(.*)为捕获组,会匹配前缀后的所有内容,[1]用于取第一个捕获组的返回结果。

3. Oracle

SELECT REGEXP_REPLACE("Column", '^ARI7879', '') AS _col0
FROM 你的表名;

4. SQL Server(2017及以上版本)

SELECT REGEXP_REPLACE([Column], '^ARI7879', '') AS _col0
FROM 你的表名;

补充非正则高性能方案

如果前缀ARI7879长度固定为6位,不需要正则的灵活匹配能力,可以用字符串截取函数获得更高的执行效率,示例(MySQL):

SELECT SUBSTRING(`Column`, 7) AS _col0 FROM 你的表名;

内容的提问来源于stack exchange,提问作者sihyuk Mhrzn

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 20:54:03