创建一个Scalar-valued Function函数来实现LastIndexOf

想截取最后一个词语,截取开始位置,从最后一个空格开始。

 

Source Code

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO


CREATE FUNCTION [dbo].[svf_LastIndexOf]
(
    @OriginalCharacterString NVARCHAR(MAX),
    @Delimiter CHAR(1)
)
RETURNS INT
AS
BEGIN    
    RETURN LEN(@OriginalCharacterString) - CHARINDEX(@Delimiter, REVERSE(@OriginalCharacterString)) + 1
END

 

 

昨天有帮助网友解决的个字符串截取的问题,《截取字符串中最后一个中文词语(MS SQL)http://www.cnblogs.com/insus/p/7883606.html 虽然实现了,但始终觉得代码写得很复杂。
MS SQL Server中没有一个如同C#一样的函数LastIndexOf。没有,我们是可以创建一个Scalar-valued Function函数的。

 

 图片 1

图片 2图片 3

 

函数写好,我们举个小例子来演示一下:
图片 4

本文由金沙官网线上发布于数据库,转载请注明出处:创建一个Scalar-valued Function函数来实现LastIndexOf

您可能还会对下面的文章感兴趣: