获取特定关键字后的所有值

时间:2013-06-21 12:27:42

标签: sql

我在SQL表列中有一些值,如下所示:

|---------------|
|    Line ID    |
|---------------|
|ABC 02 TEAM 01A|
|DDF 03 TEAM 3D |
|---------------|

我要做的是,获取'TEAM'之后的值

所以输出应该是:

01A
3D

如何存档?

2 个答案:

答案 0 :(得分:1)

如果您真的在一个列中包含所有文本,那么这将起作用:

select SUBSTRING([Line ID],CHARindex('TEAM',[Line ID],1)+LEN('TEAM'),len([Line ID]))
from table

答案 1 :(得分:0)

您可以使用SUBSTRINGCHARINDEX

WITH Lines AS
(
    SELECT 'ABC 02 TEAM 01A' LineID
    UNION ALL
    SELECT 'DDF 03 TEAM 3D' LineID
)
SELECT
    -- Use LTRIM to remove leading space
    LTRIM(SUBSTRING(LineID, CHARINDEX('TEAM', LineID) + 4, LEN(LineID)))
FROM Lines