我有一組數據,其中包含完整的UNC路徑到目錄。我只想選擇路徑(刪除服務器/ IP)。我怎樣才能做到這一點?選擇部分字符串
數據:
\\nas.home.example.com\dvd\My First Video
\\nas.office.example.com\business\Report1
\\nas.office.example.com\business\Report2
\\10.10.10.10\projects\proj1\images
\\10.10.10.10\projects\proj1\queries
\\10.10.10.10\projects\proj1\output
預期結果(可以帶或不帶龍頭\
,我不在乎):
\dvd\My First Video
\business\Report1
\business\Report2
\projects\proj1\images
\projects\proj1\queries
\projects\proj1\output
我試過以下(具體到一個以上輸入):
SELECT RIGHT(('\\nas.home.example.com\dvd\My First Video'),
CHARINDEX('\', REVERSE('\\nas.home.example.com\dvd\My First Video')));
這隻返回最內層的目錄(My First Video
)。我可以添加一個偏移量來獲取父,但它僅適用,如果目錄正是數目的字符:
SELECT RIGHT(('\\nas.home.example.com\dvd\My First Video'),
CHARINDEX('\', REVERSE('\\nas.home.example.com\dvd\My First Video'))+4);
返回\dvd\My First Video
,這是很好的 - 對於一個值。我如何修改我的查詢來處理所有數據值?
我懷疑我實際上可能需要這些查詢中的兩個。一個用於與DNS名稱的服務器,在.com
和一個IP地址,全部結束,所有開始10.10