SQL字符串操作[获取'('')的所有文本

Wal*_*ler 6 sql t-sql sql-server

我有一些看起来像这样的数据:

SourceOfBooking
----------------
Company1 (Foo)
Company2 (Bar)
Company3 (Foo1)
Company4 (Foo2)
Run Code Online (Sandbox Code Playgroud)

我想转换它,所以我的数据只显示:

SourceOfBooking
----------------
Company1
Company2
Company3
Company4
Run Code Online (Sandbox Code Playgroud)

我试过了:

LEFT(SourceOfBooking, CHARINDEX(';', SourceOfBooking) )
Run Code Online (Sandbox Code Playgroud)

没有运气.

我敢肯定我错过了一些非常简单的事情......有人关心启发吗?

KR,詹姆斯.

Rom*_*kar 18

我认为你只是把一个错误的角色

case
    when CHARINDEX('(', SourceOfBooking) > 0 then
        rtrim(left(SourceOfBooking, CHARINDEX('(', SourceOfBooking) - 1))
    else
        SourceOfBooking
end
Run Code Online (Sandbox Code Playgroud)


Ale*_* K. 5

您可以;

LEFT(SourceOfBooking, CHARINDEX(' (', SourceOfBooking + ' (') - 1)
Run Code Online (Sandbox Code Playgroud)

+ ' ('如果需要,请删除;它允许不包含行 (