mysql集合查询 targetStr ='a,b,c 'findStr ='b,c'

    xiaoxiao2022-07-07  207

    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

    最新回复(0)