首页 > 解决方案 > SQL SERVER:选择跟随某些字符的数字

问题描述

我正在尝试从一个长字符串中选择一些数字,这些数字跟在:RCT. 到目前为止,我已经设法编写了这个脚本;

  DECLARE @rct varchar(MAX)
  SET @rct = 'Reallocation of Identified Receiptsv6055161LIVERPOOL SCHOOL OF TROPICAL MEDICINE (LSTM) LONDON(GROUPA8):RCT1122489'

  SELECT SUBSTRING(@rct, CHARINDEX(':RCT', @rct), LEN(@rct)) as RCT

不幸的是,它返回一个空结果。我期望的结果是;

  RCT
--------
1122489

标签: sql-server

解决方案


可能有一种更有效的方法可以从父字符串返回 ':RCT' 的结束索引。

但是以下内容可以为您完成工作:

 DECLARE @rct varchar(MAX)
 SET @rct = 'Reallocation of Identified Receiptsv6055161LIVERPOOL SCHOOL OF TROPICAL MEDICINE (LSTM) LONDON(GROUPA8):RCT1122489'

 SELECT SUBSTRING(@rct, CHARINDEX(':RCT', @rct)+LEN(':RCT'), LEN(@rct)) as RCT

推荐阅读