日期:2014-05-17  浏览次数:20351 次

SQL 取一字符串中以两个字符为开始结束标志的字符串 怎么写
例如:abcd(123456)efgc
想要字符串  123456
用SQL 语句 怎么写,
注:123456是变量,主要是怎么写语句 取 ( ) 中间的字符?

非常 感谢

------解决方案--------------------
declare @s nvarchar(100) = 'abcd(123456)efgc'

select SUBSTRING(@s, CHARINDEX('(',@s)+1, CHARINDEX(')',@s) - CHARINDEX('(',@s) -1)
------解决方案--------------------
引用:
declare @s nvarchar(100) = 'abcd(123456)efgc'

select SUBSTRING(@s, CHARINDEX('(',@s)+1, CHARINDEX(')',@s) - CHARINDEX('(',@s) -1)

楼上正解
------解决方案--------------------
SELECT PARSENAME(REPLACE(REPLACE('abcd(123456)efgc','(','.'),')','.'),2)