本文介绍了如何从特定字符之间的字段中获取子字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含如下值的字段:

I have field which contain a value like:

AARBITMA 的 F28_TIT245_0_90A_OOC_LCL(aarbitma@LC13UPE-CIM)

我想取 '(''@' 之间的名称,即 "aarbitma".

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

我该怎么做?

我在 SQL Server 2008R2

推荐答案

-- 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:

这篇关于如何从特定字符之间的字段中获取子字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-17 19:11