Sql server 2008 在sql server拆分中获取URL中的特定元素

Sql server 2008 在sql server拆分中获取URL中的特定元素,sql-server-2008,Sql Server 2008,我有一个类似“hbc/420021/GATE(RBD-1)/Construction/D5200 Tutorial.pdf”的URL 我必须创建一个函数,它将返回SQLServer中的特定元素。 有人能帮忙吗?我假设您的问题实际上比您所包含的问题复杂得多,但要按原样回答它,您只需要找到第二个和第三个/字符,然后返回介于两者之间的内容 我将函数展开了一点,以便更容易地查看所有内容的组合: declare @url nvarchar(500) = 'hbc/420021/GATE (RBD-1)/C

我有一个类似“hbc/420021/GATE(RBD-1)/Construction/D5200 Tutorial.pdf”的URL 我必须创建一个函数,它将返回SQLServer中的特定元素。
有人能帮忙吗?

我假设您的问题实际上比您所包含的问题复杂得多,但要按原样回答它,您只需要找到第二个和第三个
/
字符,然后返回介于两者之间的内容

我将函数展开了一点,以便更容易地查看所有内容的组合:

declare @url nvarchar(500) = 'hbc/420021/GATE (RBD-1)/Construction/D5200 Tutorial.pdf';

select left(right(@url
                 ,len(@url) - charindex('/'
                                       ,@url
                                       ,charindex('/'
                                                 ,@url
                                                 ,0
                                                 )+1
                                       )
                 )
            ,charindex('/'
                      ,right(@url
                            ,len(@url) - charindex('/'
                                                  ,@url
                                                  ,charindex('/'
                                                            ,@url
                                                            ,0
                                                            )+1
                                                  )
                            )
                      ,0
                      )-1
            ) as ThirdElement;
输出:

ThirdElement
````````````
GATE (RBD-1)

你所说的特定元素是什么意思?你想要一个零件的名字,然后是序列中的第n个元素,什么?我需要第3个元素是特定的。我的函数应该返回“GATE(RBD-1)”。