在Sql中获取字符串的某个部分

时间:2014-10-31 09:05:37

标签: sql-server-2008

我有一个字符串“从City1到City2 By Bus”。我想要最后一部分“巴士”。我怎样才能通过SQL Query实现它。 From,To和By是不变的。

2 个答案:

答案 0 :(得分:0)

在sql查询中使用以下内容:

RIGHT(LEN("From City1 To City2 By Bus")-PATINDEX('%By%',"From City1 To City2 By Bus")-3)

您可以使用列名替换上述函数中的字符串。上面的函数查找单词" By",并返回它后面的内容。

Link: Microsoft documentation on string functions

答案 1 :(得分:0)

如果你的单词总是在句子的末尾,那么会采用更灵活的方法:

declare @text varchar (max) = 'From City1 To City2 By Bus'

select REVERSE(SUBSTRING(REVERSE(@text),0,CHARINDEX(' ',REVERSE(@text) )))