CREATE DEFINER=`root`@`%` FUNCTION `FIND_SET_IN_SET`(targetStr varchar(2000),findStr varchar(2000)) RETURNS int(11)
READS SQL DATA
BEGIN
DECLARE strNum int;
DECLARE lenIndex int DEFAULT 1;
DECLARE cStr VARCHAR(50);
DECLARE flag INT;
SET strNum=1+(length(targetStr) - length(replace(targetStr,',','')));
WHILE lenIndex<=strNum
DO
set cStr=reverse(substring_index(reverse(substring_index(targetStr,',',lenIndex)),',',1));
set flag=FIND_IN_SET(cStr,findStr);
if (flag>0&&cStr!='') THEN
RETURN flag;
END IF;
set lenIndex=lenIndex+1;
END WHILE;
RETURN 0;
END
mysql集合查询 targetStr ='a,b,c ' findStr ='b,c'
最新推荐文章于 2025-05-26 21:08:07 发布