文字列にすべての単語が存在するかどうかを確認する次の MySQL 関数があります。
CREATE DEFINER=`root`@`localhost` FUNCTION `ALL_WORDS`(s TEXT, m TEXT) RETURNS int(11)
BEGIN
DECLARE j INT DEFAULT 1;
DECLARE k INT DEFAULT 1;
DECLARE c INT;
--
SET s=TRIM(s);
--
IF s<>'' AND m<>'' THEN
--
SET s=CONCAT(' ', UCASE(s) , ' ' );
SET m=UCASE(m);
--
SET c=PARSECOUNT(m,' ');
--
a:LOOP
--
IF j=c+1 OR INSTR(s,CONCAT(' ',PARSE(m,' ',j),' ')) =0 THEN
--
LEAVE a;
--
END IF;
--
SET j=j+1;
--
END LOOP;
--
SET k=(j=c+1);
--
END IF;
--
RETURN k;
--
END
実行すると、次の応答が返されます
エラーコード: 1267