1、patindex用法
patindex('%pattern%', expression)
- pattern--> 正则表达式,需要匹配的前导内容,可以进通配;
- expression-->需要的编辑的数据内容,可以是动态的字段值;
- 此方法的返回值为int的数据类型,返回的该正则表达式第一次匹配的后位置,如[^0]-->001,返回的值为3
2、获取开始截取开始的位置:
start = patindex('%pattern%', expression) - 1;
3、获取匹配后截取字符串的长度:
length = len(expression) - patindex('%pattern%', expression);
4、进行数据截取
substring(expression, start, length)
此时可以获取需要的字符串
5、整个sql为:
update editTable
set editTable.{editColunm}=SUBSTRING
(
editTable.{editColunm},
patindex('%[^0]%', editTable.{editColunm}),
len(editTable.{editColunm}) - (patindex('%[^0]%', editTable.{editColunm}) - 1)
)
from {datatableName} editTable
6、删除后缀以此类推。
本文介绍了一种使用SQL中的patindex函数结合substring函数来精确截取字符串的方法,特别适用于从包含数字的字段中去除前导0的情况。通过具体实例演示了如何定位非0字符的起始位置,并据此实现字符串的有效截取。
708

被折叠的 条评论
为什么被折叠?



