2013-01-07 78 views
-1

我想刪除後的一切,包括在字符串「RR」例如後一切都很刪除某個字符

12345rr234應該是12345

我試過(RCS)爲變量我使用

rtrim(rcs,'rr') 

,但我得到的錯誤

The rtrim function requires 1 argument(s). 
+0

是否有任何行有'rcs'不包含'rr'? –

+0

rtrim用於從字符串末尾'r''trim'空格 – KevinDTimm

回答

1
SUBSTRING(rcs,1,CHARINDEX('rr',rcs)-1) 

這樣做,只要rcs實際上總是包含rr序列。

+0

它們應該始終包含rr,但它們可能是前2個字符 – user1296762

+0

@ user1296762 - 在這種情況下它應該只是一個空字符串嗎? –

+0

@Damien_The_Unbeliever無論如何,當'rr'是第一個字符時,你的第一個解決方案沒有返回空字符串嗎? (不需要'CASE') – Lamak

0

檢查是否RR存在,如果沒有則返回完整的價值:

DECLARE @rcs varchar(50) 
SET @rcs='12345rr234' 
SELECT 
CASE WHEN CHARINDEX('rr',@rcs) > 0 THEN 
    LEFT(@rcs,CHARINDEX('rr',@rcs)-1) ELSE 
    @rcs 
END