CREATE FUNCTION [dbo].[getStrContainNum](@S1 VARCHAR(1000),@S2 VARCHAR(1000))
RETURNS INT
AS
BEGIN
DECLARE @I INT,@S VARCHAR(1000),@S3 VARCHAR(1000)
SET @I=0
SET @S3=@S1
WHILE @S3<>''
BEGIN
IF CHARINDEX(',',@S3)>0
SET @S=SUBSTRING(@S3,1,CHARINDEX(',',@S3))
ELSE
SET @S=@S3+','
IF CHARINDEX(@S,@S2+',')>0
SET @I=@I+1
SET @S3=SUBSTRING(@S3,LEN(@S)+1,LEN(@S3))
END
RETURN @I
END
GO
RETURNS INT
AS
BEGIN
DECLARE @I INT,@S VARCHAR(1000),@S3 VARCHAR(1000)
SET @I=0
SET @S3=@S1
WHILE @S3<>''
BEGIN
IF CHARINDEX(',',@S3)>0
SET @S=SUBSTRING(@S3,1,CHARINDEX(',',@S3))
ELSE
SET @S=@S3+','
IF CHARINDEX(@S,@S2+',')>0
SET @I=@I+1
SET @S3=SUBSTRING(@S3,LEN(@S)+1,LEN(@S3))
END
RETURN @I
END
GO
本文介绍了一个SQL函数getStrContainNum,该函数接收两个字符串参数并返回第二个字符串中包含第一个字符串元素的数量。通过循环和子串处理实现,适用于字符串匹配场景。

被折叠的 条评论
为什么被折叠?



