MySQL Split 函數


本文地址:http://www.cnblogs.com/qiaoyihang/p/6270165.html

 

mysql 本身並沒有 split 函數,但是,我們實現累死功能的自定義函數是非常簡單的

創建函數的語法

用戶自定義函數是拓展mysql函數的一種方式,它用起來和mysql本身自帶的函數沒有什么區別

創建一個自定義函數的語法:

CREATE [AGGREGATE] FUNCTION function_name
RETURNS {STRING|INTEGER|REAL|DECIMAL}

split  函數

 

CREATE FUNCTION SPLIT_STR(
  x VARCHAR(255),
  delim VARCHAR(12),
  pos INT
)
RETURNS VARCHAR(255)
RETURN REPLACE(SUBSTRING(SUBSTRING_INDEX(x, delim, pos),
       LENGTH(SUBSTRING_INDEX(x, delim, pos -1)) + 1),
       delim, '');

 

用法:

 

SELECT SPLIT_STR(string, delimiter, position)

例子:

 

SELECT SPLIT_STR('a|bb|ccc|dd', '|', 3) as third;

+-------+
| third |
+-------+
| ccc   |
+-------+

 


免責聲明!

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



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