我基本上有一个需要收集的列。该列的格式如下:
Column A
--------
Root\FOLDERPATH\somesubfolderpath\somedocument.doc
第一个字符串“Root \”将始终与相同字符的lengt相同。 “Root”之后的所有内容都可以根据文档的文件夹结构而有所不同。
我需要检索的是第二个字符串。使用上面的例子,列应该看起来像lilke:
Column A
--------
FOLDERPATH
所以我需要删除“Root \”之后获取字符串并在此之后删除所有内容。
答案 0 :(得分:6)
一种方式:
substring(fld, 6, charindex('\', substring(fld + '\', 6, len(fld))) -1)
答案 1 :(得分: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)