2011-11-02 55 views
4

我基本上有一列需要子串。該列的格式如下所示:t-sql子串

Column A 
-------- 
Root\FOLDERPATH\somesubfolderpath\somedocument.doc 

第一個字符串「Root \」將始終是相同字符的相同長度。取決於文檔的文件夾結構,「Root \」之後的所有內容都可能有所不同。

我需要檢索的是第二個字符串。使用上面的例子中,列應該lilke:

Column A 
-------- 
FOLDERPATH 

所以我需要切出的「根\」獲得此之後,串並在此之後切出一切。

回答

6

方式一:

substring(fld, 6, charindex('\', substring(fld + '\', 6, len(fld))) -1) 
+0

亞歷你好,非常感謝:) – user1024008

0
declare @val varchar(100) 
set @val = 'Root\FOLDERPATH\somesubfolderpath\somedocument.doc' 

select left(right(@val, len(@val) - 5), charindex('\', right(@val, len(@val) - 5)) - 1)