簡體   English   中英

如何從字符串中刪除特定字符

[英]How to remove a specific character from the string

使用SQL Server 2008

像這樣的字符串: 'C/123232323' or '/343434343443' or 'C2323232322'

我要從字符串中刪除C和/

試過查詢

選擇替換('/ 1233434','C /','')

如果C /都在上面,則上面的查詢有效。 如果/僅在那里,則替換不起作用。 如果C僅存在,則替換不起作用。 如何同時滿足這兩個條件

預期產量

123232323
343434343443
2323232322

需要查詢輸出

您可以通過嵌套replace()來實現此目的,如下所示:

select replace(replace('C/12341234','/',''),'C','')

可能不是最漂亮的,但它可以工作:)

您可以使用兩個嵌套的REPLACE

WITH SampleData(string) AS(
    SELECT 'C/123232323' UNION ALL 
    SELECT '/343434343443' UNION ALL 
    SELECT 'C2323232322'
)
SELECT REPLACE(REPLACE(string,'C',''),'/','')
FROM SampleData

使用Patindex + Substring

DECLARE @str VARCHAR(50)='/343434343443' ---or '/343434343443' or 'C2323232322'
SELECT Substring(@str, Patindex('%[0-9]%', @str), Len(@str)) 

暫無
暫無

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

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