CREATE FUNCTION `sp_str`(p_str text, p_begin_str text,p_end_str text) RETURNS text CHARSET utf8
BEGIN
/*
截取指定的两个字符串之间的内容
SELECT sp_str('[]abcd[12345]aa[]ss','abcd[',']');
*/
declare p_result text;
DECLARE m_len INT DEFAULT 0;
DECLARE m_index INT DEFAULT 0;
/*计算第一个匹配字符串的索引位置*/
if locate(p_begin_str,p_str)=0 THEN
set p_result='';
ELSE
select locate(p_begin_str,p_str)+char_length(p_begin_str) into m_index;
/*计算第一个匹配字符串的长度*/
select locate(p_end_str,p_str,m_index) into m_len;
select SUBSTRING(p_str,m_index,m_len-m_index) INTO p_result ;
end if;
RETURN p_result;
END
mysql取2个字符串中的结果的函数
最新推荐文章于 2024-08-06 04:26:16 发布