使用SQL在字符串中的分隔符之间获取值

时间:2014-03-11 04:54:21

标签: sql sql-server

我想从字符串中提取Deparment值,例如:COUNTRY_SITE_DEPARTMENT.csv,“。”之间的DEPARTMENT。和“_”,我确定这在SQL中作为选择查询是可行的,有人能指出我正确的方向吗?

我从另一个例子中使用了类似的东西,但我运气不好:(

Select substring( LEFT(Col,charindex('.',Col)-1),
       charindex('_',Col)+1,
       len(LEFT(Col,charindex('.',Col)-1))-1 )
FROM FILENAMES;

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

如果您在寻找最后_时反转字符串,这是最简单的方法:

SELECT REVERSE(SUBSTRING(REVERSE(Col), CHARINDEX('.', REVERSE(Col)) + 1, 
        CHARINDEX('_', REVERSE(Col)) - CHARINDEX('.', REVERSE(Col)) - 1))
FROM FILENAMES

我在您的查询中使用SQL Server函数时假设了SQL Server。