662
社区成员




DECLARE @a TABLE (B NVARCHAR(100))
INSERT INTO @a VALUES ('000-000-00000.abc')
SELECT PARSENAME(replace(b,'-','.'),2) AS r FROM @a
/*
r
00000
*/
declare @aa varchar(50) = '000-000-00000.abc'
select PARSENAME(REPLACE(@aa,'-','.'),2),PARSENAME(REPLACE(@aa,'-','.'),3) --可将字符连接起来
DECLARE @char VARCHAR(20)
SET @char = '000-000-00000.abc'
SELECT SUBSTRING(
@char,
CHARINDEX('-', SUBSTRING(@char, CHARINDEX('-', @char) + 1, 1000)) + CHARINDEX('-', @char)+1, --开始截取位置
CHARINDEX('.', @char) -(CHARINDEX('-', SUBSTRING(@char, CHARINDEX('-', @char) + 1, 1000))+ CHARINDEX('-', @char)+1) --截取长度
)
--------------------
00000
(1 行受影响)