我有一个工作版本的提取步骤,这似乎相当长,我很好奇是否有一个更简单的方法,我可能会错过.我在论坛上的其他问题中看到过SUBSTRING_INDEX(),但是,在我的SQL Server Management Studio版本中没有识别该函数.
我有一个类似如下的字符串:Make\Model\Trim\New
我只想从这个字符串中提取"Trim".本质上,提取最后一个反斜杠和倒数第二个反斜杠之间的子字符串.
因为字符串的长度和反斜杠的数量可能不同,所以我不能简单地说"在第二个和第三个反斜杠之后".下面是我目前正在使用的代码.
Select
REVERSE(SUBSTRING(
REVERSE(CAR_DESC),
CHARINDEX('\',REVERSE(CAR_DESC))+1,
CHARINDEX('\',REVERSE(CAR_DESC),CHARINDEX('\',REVERSE(CAR_DESC))+1)-CHARINDEX('\',REVERSE(CAR_DESC))-1
)) AS TEST1
FROM TABLEA