How to take substring from field between specific chars

删除回忆录丶 提交于 2019-12-06 10:10:42

问题


I have field which contain a value like:

F28_TIT245_0_90A_OOC_LCL by AARBITMA(aarbitma@LC13UPE-CIM)

I want to take the name between '(' and '@' which is "aarbitma".

How can I do it?

I'm running on SQL Server 2008R2


回答1:


-- there are no checks for wrong input text
-- this is TODO to be done yourself
DECLARE @text VARCHAR(100)
DECLARE @start INT
DECLARE @end INT
SET @text = 'F28_TIT245_0_90A_OOC_LCL by AARBITMA(aarbitma@LC13UPE-CIM)'

SELECT @start = PATINDEX('%(%@%', @text)
SELECT @end = CHARINDEX('@', @text, 0)
SELECT SUBSTRING(@text, @start+1, @end-@start-1)

MSDN:

  • PATINDEX()
  • CHARINDEX()
  • SUBSTRING()


来源:https://stackoverflow.com/questions/8503345/how-to-take-substring-from-field-between-specific-chars

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!