我有一个名为“path”的表,其中一列名为“路径文件名”,它包含如下内容:
1. U:01.03.141878Box1819P3FarihaTanzir(Moniruzzaman)0103141(756).jpg
2. U:01.03.141876Box1807P3Arif(Mahfuz)151213Picture 96609.jpg
3. U:01.03.141130Box1781P3RakhiSwpna(Farah)0103141 (1486).jpg
4. U:01.03.141952Box1810P1Sufia(Jakia)010314Picture 25304.jpg
我想在第一个大括号()中获取名称,如:1.Moniruzzaman 2.Mahfuz 3.Farah 4.Jakia
我左右使用了patindex(),charindex()和substring函数的组合,但无法获得所需的结果。
答案 0 :(得分:1)
以下是使用stuff()
两次的方法:
select stuff(stuff(col, charindex(')', col), len(col), ''),
1, charindex('(', col), '')
您可以通过添加:
来测试它from (select 'asbc(axx)asfdsf(123)d' as col) t
这假设第一个关闭paren()
)出现在第一个开始paren((
)之后。
答案 1 :(得分:1)
试试这个: -
Declare @var varchar(100)
Set @var ='U:01.03.141878Box1819P3FarihaTanzir(Moniruzzaman)0103141(756).jpg'
Select substring(@var,
charindex('(',@var)+1,
charindex(')',@var)-charindex('(',@var)-1)