2010-11-12 49 views
0

OK,所以我有點生疏了對T-SQL的零件,如字符串操作 我在一個叫[路徑]字段中輸入字符串的字段的值可能看起來像T-SQL路徑操作

'foo\Branches\Bar\Baz\Helpers\FileNotFoundResult.cs' 

我需要更新字段(所有記錄),這樣的結果將是

'Branches\Bar\Baz\Helpers\FileNotFoundResult.cs' 

那就是前第一什麼帶「\」和「\」

所以我d appricate如果任何o NE可以幫我填寫 「空白」

UPDATE SourceFiles 
    SET Path = <blanks> 

回答

3

喜歡的東西

UPDATE SourceFiles 
    SET Path = SUBSTRING(Path,CHARINDEX('\',Path)+1,8000) 

(假設你的路徑列不是VARCHAR(MAX))

如果您的路徑列可能不包含反斜槓,你可能想要:

UPDATE SourceFiles 
    SET Path = CASE 
        WHEN CHARINDEX('\',Path) = 0 THEN Path 
        ELSE SUBSTRING(Path,CHARINDEX('\',Path)+1,8000) 
       END