在Sql Server中

我有以下字符串

DECLARE @str nvarchar(max);
set @str = "Hello how are you doing today,Its Monday and 5 waiting days";

DECLARE @srch nvarchar(max);
set @srch = " how,doing,monday,waiting";

现在我要检查str是否包含srch的任何字符串(以逗号分隔的字符串)

我只在SQL Server中想要它

是否有可能用in子句编写一些查询

喜欢
select from @str where _____  in (select * from CommaSplit(@srch)

其中CommaSplit函数返回@srch逗号分隔值的行

我不想使用游标或任何循环概念,因为@srch值可能会很长

谢谢

最佳答案

您可以使用相同的功能来获取行中的第一个字符串

select string from CommaSplit(@srch,'') where string  in (select * from CommaSplit(@srch)

09-20 09:50