簡體   English   中英

使用值從另一列中刪除字符串的一部分

[英]Removing part of a String using value from another column

我有一個包含附件文件路徑的字段,文件名中包含附件“ AttachmentID”,該附件會自動附加,但是在某些情況下,此ID是重復的,這在我的前端嘗試查找附件時會引起問題。 我要刪除重復的ID。

我在想最好的方法是使用REPLACE,但是我不知道如何告訴SQL在Path中找到AttachmentID

這是我為查找記錄而寫的內容:

SELECT Path
FROM [Attachments].[dbo].[Attachments]
WHERE [Path] LIKE CONCAT ('%','-',[AttachmentID],'-','%')

\\\\SERVERNAME\\X\\FILEPATH\\ATTACHMENT\\01928-01928-Filename.JPG

我希望它顯示為: \\\\SERVERNAME\\X\\FILEPATH\\ATTACHMENT\\01928-Filename.JPG

我要刪除的數字也獨立存儲在另一個列為AttachmentID的列中。

我想我可能已經回答了我自己的問題,對不起!

UPDATE [Attachments].[dbo].[Attachments]
SET Path = REPLACE(Path, CONCAT('-',[AttachmentID]), '')
WHERE [Path] LIKE CONCAT ('%','-',[AttachmentID],'-','%')

由於附加ID始終以連字符作為前綴,因此這似乎可行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM