mysql 按指定字符拆分字符串


SQL語句:

SET @str = '7654,7698,7782,7788';
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(@str, ',', help_topic_id + 1), ',', - 1) AS num
FROM mysql.help_topic
WHERE help_topic_id < LENGTH(@str) - LENGTH(REPLACE (@str, ',', '')) + 1

 

封裝成存儲過程:

/*
 * 名稱:按指定字符拆分字符串
 * 輸入參數,str,需拆分的字符串
 * 輸入參數,splitChar,用於分隔的字符
 */
DROP PROCEDURE IF EXISTS proc_common_split;
CREATE PROCEDURE proc_common_split 
(
    -- 需拆分的字符串
    str LONGTEXT,
    -- 用於分隔的字符
    splitChar CHAR(1)
)
BEGIN
    SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(str, splitChar, help_topic_id + 1), splitChar, - 1) AS Result
    FROM mysql.help_topic
    WHERE help_topic_id < LENGTH(str) - LENGTH(REPLACE (str, splitChar, '')) + 1;
END;

/*

    輸入參數,str,需拆分的字符串
    輸入參數,splitChar,用於分隔的字符
 
    CALL proc_common_split('1,2,3', ',');

*/

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM