选择字符串的一部分

时间:2017-02-21 10:34:31

标签: sql sql-server

我有一个类似<script type="text/javascript"> var title = {v:format.json.encode(value: branch.name)}; //.. do something </script> 的字符串,我想只选择11029,即_之间的数字。我试试

$TAOVV*NK_LFE_11029_41586

但不能仅提取该数字。如何定义更改的长度,并且它不总是5个字符,如本例所示?

1 个答案:

答案 0 :(得分:0)

你需要做两次子串.. 试试这个

declare @code nvarchar(100)='$TAOVV*NK_LFE_11029_41586'
select substring(substring(@code,PatIndex('%_[0-9]_%', @code)+1,LEN(@code)),1,charindex('_',substring(@code,PatIndex('%_[0-9]_%', @code)+1,LEN(@code)))-1)