修剪具有该字符的多个文本的字符串中的FIRST字符

Cas*_*leb 0 sql sql-server trim character

我正在使用SQL Server 2008,我正在尝试修剪看起来像这样的值

DocID
----------------    
FOO_1_23_456
FOO1_1_23_4567
Run Code Online (Sandbox Code Playgroud)

我试着这么做,所以它只会在第一个'_'之后给我一切

结果

 _1_23_456
 _1_23_4567
Run Code Online (Sandbox Code Playgroud)

现在我的查询是

select 
    right(DocIDDocument, LEN(DocID.Document) - 3)) AS NewDocID
Run Code Online (Sandbox Code Playgroud)

只修剪前3个字符,我需要它在第一个'_'之前修剪所有内容

谢谢

Gor*_*off 5

使用stuff()charindex():

select stuff(document, 1, charindex('_', document) - 1, '')
Run Code Online (Sandbox Code Playgroud)