sql查询需要拆分的字符串是否包含在另一个字符串中?

¥5.00
如题,我想查询1,3 是否包含在1,2,3中?请问如何实现?

最佳解决方案

可以创建以下函数实现:

USE [test_db]
GO

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE FUNCTION [dbo].[protoData](@Items varchar(1000),@importMels varchar(1000))
RETURNS int
AS
BEGIN
    DECLARE @val varchar(20),@check varchar(50),@v int --待处理拼接字符串
--开始处理
SET @v=0
SET @Items=@Items+',' --必须追加“,”否则最后一个无法输出
DECLARE @ItemIndex INT=CHARINDEX(',',@Items)
 WHILE(@Items!=',' AND @ItemIndex>0)--拆分字符串,循环输出
BEGIN
    set @val=(LEFT(@Items,@ItemIndex-1))
    
    SET @Items=RIGHT(@Items,LEN(@Items)-@ItemIndex)
    SET @ItemIndex=CHARINDEX(',',@Items)
    set @check=(select charindex(@val,@importMels))
    if @check > 0
    begin
        set @v=@v+1
    end
END
return @v
END
GO

嗝屁猫 T2 被采纳率89%
2021-03-08 15:22
打赏 0 1
页面统计
1121 访问
0 帮助
0.00 打赏

hierror 2019 © hierror.com 京ICP备13026190号-1

通知消息
  • 暂无任何消息