Mysql中實現提取字符串中的數字的自定義函數分享

該mysql提取出字符串中的數字函數以下:mysql

複製代碼代碼以下:sql

CREATE FUNCTION GetNum (Varstring varchar(50))
RETURNS varchar(30)
BEGIN
DECLARE v_length INT DEFAULT 0;
DECLARE v_Tmp varchar(50) default '';
set v_length=CHAR_LENGTH(Varstring);
WHILE v_length > 0 DO



IF (ASCII(mid(Varstring,v_length,1))>47 and ASCII(mid(Varstring,v_length,1))<58 )   THEN
set v_Tmp=concat(v_Tmp,mid(Varstring,v_length,1));
END IF;
SET v_length = v_length - 1;
END WHILE;
RETURN REVERSE(v_Tmp);
END;


字段使用方法,以下:函數

複製代碼代碼以下:code

select GetNum(字段)  from table

以一個字符串舉例:字符串

複製代碼代碼以下:string

select GetNum("dfdfd666")

結果返回:666。table

而且該函數能夠提取出字符串中非連貫的數字,如:select

複製代碼代碼以下:方法

select GetNum("dfdd111fd666")

結果返回:111666。tab

相關文章
相關標籤/搜索