最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql split函數(shù)用逗號分隔的實現(xiàn)

 更新時間:2020年10月28日 10:56:36   作者:xinglei200909931  
這篇文章主要介紹了mysql split函數(shù)用逗號分隔的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

1:定義存儲過程,用于分隔字符串

DELIMITER $$
USE `mess`$$
DROP PROCEDURE IF EXISTS `splitString`$$
CREATE DEFINER=`root`@`%` PROCEDURE `splitString`(IN f_string VARCHAR(1000),IN f_delimiter VARCHAR(5))
BEGIN  
  DECLARE cnt INT DEFAULT 0;  
  DECLARE i INT DEFAULT 0;  
  SET cnt = func_get_splitStringTotal(f_string,f_delimiter);  
  DROP TABLE IF EXISTS `tmp_split`;  
  CREATE TEMPORARY TABLE `tmp_split` (`val_` VARCHAR(128) NOT NULL) DEFAULT CHARSET=utf8;  
  WHILE i < cnt  
  DO  
    SET i = i + 1;  
    INSERT INTO tmp_split(`val_`) VALUES (func_splitString(f_string,f_delimiter,i));  
  END WHILE;  
END$$
DELIMITER ;

2:實現(xiàn)func_get_splitStringTotal函數(shù):該函數(shù)用于計算分隔之后的長度,這里需要了解的函數(shù):

REPLACE(str,from_str,to_str)

Returns the string str with all occurrences of the string from_str replaced by the string to_str. REPLACE() performs a case-sensitive match when searching for from_str.
例如:
mysql> SELECT REPLACE('www.mysql.com', 'w', 'Ww');
    -> 'WwWwWw.mysql.com'

具體實現(xiàn):

DELIMITER $$

USE `mess`$$

DROP FUNCTION IF EXISTS `func_get_splitStringTotal`$$

CREATE DEFINER=`root`@`%` FUNCTION `func_get_splitStringTotal`(  
f_string VARCHAR(10000),f_delimiter VARCHAR(50)  
) RETURNS INT(11)
BEGIN  
 RETURN 1+(LENGTH(f_string) - LENGTH(REPLACE(f_string,f_delimiter,'')));  
END$$

DELIMITER ;

3:實現(xiàn)func_splitString函數(shù):用于獲取分隔之后每次循環(huán)的值,這里需要了解的函數(shù):

(1)REVERSE(str)

Returns the string str with the order of the characters reversed.
例如:mysql> SELECT REVERSE('abc');
    -> 'cba'

(2)
SUBSTRING_INDEX(str,delim,count)


Returns the substring from string str before count occurrences of the delimiter delim. If count is positive, everything to the left of the final delimiter (counting from the left) is returned. If count is negative, everything to the right of the final delimiter (counting from the right) is returned. SUBSTRING_INDEX() performs a case-sensitive match when searching for delim.

例如:
mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);
    -> 'www.mysql'
mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', -2);
    -> 'mysql.com'

具體實現(xiàn):

DELIMITER $$

USE `mess`$$

DROP FUNCTION IF EXISTS `func_splitString`$$

CREATE DEFINER=`root`@`%` FUNCTION `func_splitString`( f_string VARCHAR(1000),f_delimiter VARCHAR(5),f_order INT) RETURNS VARCHAR(255) CHARSET utf8
BEGIN  
  DECLARE result VARCHAR(255) DEFAULT '';  
  SET result = REVERSE(SUBSTRING_INDEX(REVERSE(SUBSTRING_INDEX(f_string,f_delimiter,f_order)),f_delimiter,1));  
  RETURN result;  
END$$

DELIMITER ;

使用:

(1)調(diào)用存儲過程:

CALL splitString('1,3,5,7,9',',');

(2):查看臨時表

SELECT val_ FROM tmp_split AS t1;

 結(jié)果:


到此這篇關(guān)于mysql split函數(shù)用逗號分隔的實現(xiàn)的文章就介紹到這了,更多相關(guān)mysql split逗號分隔內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解決MySQL 5.7.9版本sql_mode=only_full_group_by問題

    解決MySQL 5.7.9版本sql_mode=only_full_group_by問題

    這篇文章主要介紹了解決MySQL 5.7.9版本sql_mode=only_full_group_by問題,需要的朋友可以參考下
    2017-05-05
  • 解決Navicat for MySQL 連接 MySQL 報2005錯誤的問題

    解決Navicat for MySQL 連接 MySQL 報2005錯誤的問題

    在本地MySQL的服務啟動后,由于Navicat的一些功能需要聯(lián)網(wǎng)才可以使用,今天重點給大家介紹Navicat for MySQL 連接 MySQL 報2005 -Unknown MySQL server host ‘localhost’(0)錯誤的情況與解決方法,感興趣的朋友一起看看吧
    2021-05-05
  • MySQL regexp 命令詳解

    MySQL regexp 命令詳解

    REGEXP命令用于在查詢中進行正則表達式匹配,支持多種符號和語法,如^、$、.、*、+、?、|、[]等,示例展示了如何匹配特定字符、數(shù)字、多個選項等,使用BINARY關(guān)鍵字可以區(qū)分大小寫,本文介紹MySQL regexp 命令,感興趣的朋友一起看看吧
    2025-03-03
  • MySQL關(guān)系型數(shù)據(jù)庫事務的ACID特性與實現(xiàn)

    MySQL關(guān)系型數(shù)據(jù)庫事務的ACID特性與實現(xiàn)

    這篇文章主要介紹了MySQL關(guān)系型數(shù)據(jù)庫事務的ACID特性與實現(xiàn),ACID?是為保證事務transaction是正確可靠的,具備原子性、一致性、隔離性、持久性等特性
    2022-07-07
  • mysql 截取指定的兩個字符串之間的內(nèi)容

    mysql 截取指定的兩個字符串之間的內(nèi)容

    今天我同事在用mysql的時候,需要對一個字符串中的指定內(nèi)容進行截取
    2009-07-07
  • lnmp下如何關(guān)閉Mysql日志保護磁盤空間

    lnmp下如何關(guān)閉Mysql日志保護磁盤空間

    這篇文章主要介紹了lnmp下如何關(guān)閉Mysql日志保護磁盤空間的相關(guān)資料,需要的朋友可以參考下
    2015-09-09
  • MySQL Innodb行格式詳解

    MySQL Innodb行格式詳解

    在數(shù)據(jù)庫管理中,行格式是數(shù)據(jù)存儲的重要概念,尤其是在MySQL的InnoDB存儲引擎中,本文給大家介紹MySQL Innodb行格式,感興趣的朋友跟隨小編一起看看吧
    2024-09-09
  • MySQL 丟失數(shù)據(jù)的原因及解決

    MySQL 丟失數(shù)據(jù)的原因及解決

    這篇文章主要介紹了MySQL 丟失數(shù)據(jù)的原因及解決,幫助大家更好的理解和學習使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2021-05-05
  • MySQL無法啟動的解決辦法

    MySQL無法啟動的解決辦法

    這篇文章主要介紹了MySQL無法啟動的解決辦法的相關(guān)資料,希望通過本文大家能解決數(shù)據(jù)庫不能啟動的問題,需要的朋友可以參考下
    2017-09-09
  • MySQL窗口函數(shù)OVER()用法及說明

    MySQL窗口函數(shù)OVER()用法及說明

    這篇文章主要介紹了MySQL窗口函數(shù)OVER()用法及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08

最新評論

青海省| 万荣县| 驻马店市| 邵东县| 方正县| 永登县| 沁源县| 南平市| 永城市| 田林县| 荔波县| 大名县| 洱源县| 隆安县| 尉氏县| 西青区| 科技| 松潘县| 图们市| 揭阳市| 东阳市| 手游| 瓦房店市| 富源县| 葵青区| 石首市| 新疆| 碌曲县| 铁岭县| 黄平县| 曲周县| 安福县| 林口县| 古丈县| 临城县| 灵寿县| 仙桃市| 方城县| 纳雍县| 凤山县| 自贡市|