嗨,如何选择从单元格右侧开始的一对 ( ) 之间的整数?原因是,可能还有另一对包含字符的括号
如果某些记录由于某种原因没有右括号怎么办..
例如
期间 |节目名称 |
简 | ABC ( child ) (30) |
二月 | Hello World (20T (20) |
结果:
30
20
我有这个脚本,
选择期间,节目名称,
substring(ProgrammeName,(len(ProgrammeName) - (patindex('%(%', Reverse(ProgrammeName)))+2),(len(ProgrammeName)-1))
从表
但它只显示
30)
20)
我一直在操纵它,以便它不会提取“)”,但可以得到预期的
结果。
最佳答案
如果您想准备数据以进行标准化,则快速而肮脏;
select substring(fld, patindex('%([0-9]%)', fld) + 1, len(fld) - case patindex('%([0-9]%)', fld) when 0 then 0 else patindex('%([0-9]%)', fld) + 1 end)
关于SQL Server - 选择括号 ( ) 之间的整数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3263148/