共计 714 个字符,预计需要花费 2 分钟才能阅读完成。
导读 | MySQL 没有 Split 函数,需要自己定义,以下是几个自定义的 split 函数,MySQL 里的 Split 用法。 |
CREATE PROCEDURE sp_split(in words varchar(2000),in regex varchar(20)) | |
BEGIN | |
CREATE TEMPORARY TABLE IF NOT EXISTS temp_key_split | |
(key_words varchar(20) | |
); | |
DELETE FROM temp_key_split; | |
while(instr(words,regex)0) DO | |
INSERT temp_key_split(key_words) VALUES (substring(words,1,instr(words,regex)-1)); | |
set words = INSERT(words,1,instr(words,regex),''); | |
END WHILE; | |
INSERT temp_key_split(key_words) VALUES (words); | |
END; |
MyBatis 中操作存储过程
<select id="callStoredProcedure" parameterType="pd" statementType="CALLABLE"> | |
call sp_split((SELECT GROUP_CONCAT(seo_keywords) FROM shopping_goods WHERE seo_keywords LIKE CONCAT(CONCAT('%', #{goods_key}),'%') | |
), ','); | |
</select> |
正文完
星哥玩云-微信公众号
