【发布时间】:2021-05-18 06:15:27
【问题描述】:
我有这个问题:
Declare @t nvarchar(300) ='83082351_10_P00004'
select SUBSTRING(
@t,
charindex('_',@t)+1,
CHARINDEX('_', @t, (CHARINDEX('_', @t)+1))
)
我希望输出为10,它位于两个_ 字符之间,我不知道我在查询中做错了什么。
谁能帮帮我。
【问题讨论】:
-
SUBSTRING返回由第三个参数定义的字符数,在该位置您将返回第二个下划线的 位置,即12;所以你要求在第一个下划线之后 的 12 个字符。 -
您为什么使用不受支持的 SQL Server 版本?
标签: sql sql-server tsql sql-server-2008