Tsql 我需要一个T-SQL脚本,它可以去掉右边的数字字符
比如说Tsql 我需要一个T-SQL脚本,它可以去掉右边的数字字符,tsql,Tsql,比如说 Input: 0123BBB123456 Output: 123456 Input: ABC00123 Output: 00123 Input: 123AB0345 Output: 0345 换句话说,代码应该开始从右侧剥离字符,并在遇到非0-9字符时停止 我必须在数百万条记录上运行它,因此我正在寻找一种有效的基于集合的方法,而不是一种在循环中为每条记录执行子字符串函数的游标方法 我在尝试将其格式化以供阅读时遇到问题。给我几分钟 令人沮丧的是……我认为我使用的浏
Input: 0123BBB123456 Output: 123456
Input: ABC00123 Output: 00123
Input: 123AB0345 Output: 0345
换句话说,代码应该开始从右侧剥离字符,并在遇到非0-9字符时停止
我必须在数百万条记录上运行它,因此我正在寻找一种有效的基于集合的方法,而不是一种在循环中为每条记录执行子字符串函数的游标方法
我在尝试将其格式化以供阅读时遇到问题。给我几分钟
令人沮丧的是……我认为我使用的浏览器IE6(我的公司授权)正在使这一点变得具有挑战性。这个网站与6不兼容。怎么样
;with test(value) as (
select '0123BBB123456' union
select 'ABC00123' union
select '123AB0345' union
select '123'
)
select
value,
right(value, patindex('%[^0-9]%', reverse('?' + value)) - 1)
from test
0123BBB123456 123456
123 123
123AB0345 0345
ABC00123 00123
给人印象深刻的非常感谢你。许可后几分钟内将接受。