SQL Server删除最后一个字

时间:2018-06-19 14:20:26

标签: sql-server

我在名为Tier的列中有变量。请参见下面的一些示例;

Tier  
Tier 1 (Unspecified)
Tier 7 (Anti-client)
Tier 3 (Priority)

我希望像下面这样转换变量;

Tier  
Tier 1
Tier 7
Tier 3

您知道如何有效地删除变量末尾方括号中的所有字符串吗?

谢谢

克里斯

1 个答案:

答案 0 :(得分:1)

这是您需要的吗?

create table #table1 
    (id int
    ,Tier varchar(100)
    )

insert into #table1 VALUES
(1, 'Tier 1 (Unspecified)'),
(2, 'Tier 7 (Anti-client)'),
(3, 'Tier 3 (Priority)')

select  id,
        substring(tier, 1, charindex('(', tier) - 1) as Tier
from    #table1

如果确定括号前有空格,则可以使用substring(tier, 1, charindex('(', tier) - 2) as Tier