我有几个这样的路径名:
some\cool\path\1\d32a
some\cool\path\2\x3rydf
some\cool\path\3\y42d
some\cool\path\4\qasdf3
some\cool\path\5\jv5
我想用\newPath
其中包含1、2或3(而不是4或5)的路径替换路径的最后一部分。预期结果将是:
some\cool\path\1\newPath
some\cool\path\2\newPath
some\cool\path\3\newPath
some\cool\path\4\qasdf3
some\cool\path\5\jv5
我可以做这样的事情:
UPDATE mytable
SET Viewsmap = [method I'm looking for]
WHERE PathName like '%1%'
OR PathName like '%2%'
OR PathName like '%3%'
但是我不知道如何更改每个字符串的最后一部分,因为未知路径的最后一部分是什么,并且该Replace
函数似乎不接受通配符。
您可以使用:
LEFT (Viewsmap, LEN(Viewsmap) - CHARINDEX('\', REVERSE(Viewsmap)) + 1 )
为了提取是之前的部分最后一次出现的\
。
然后,您可以轻松UPDATE
使用:
UPDATE mytable
SET Viewsmap = CONCAT(LEFT(Viewsmap, LEN(Viewsmap) - CHARINDEX('\', REVERSE(Viewsmap)) + 1 ),
'newPath')
WHERE PathName like '%1%'
OR PathName like '%2%'
OR PathName like '%3%'
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句