国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

Mysql 自定義隨機字符串的實現方法

2024-07-24 12:53:46
字體:
來源:轉載
供稿:網友

前幾天在開發一個系統,需要用到隨機字符串,但是mysql的庫函數有沒有直接提供,就簡單的利用現有的函數東拼西湊出隨機字符串來.下面簡單的說下實現當時.

1.簡單粗暴.

select ..., substring(MD5(RAND()),floor(RAND()*26)+1,6) as rand_str .....

上訴示例產生的是:6位長度的隨機字符串.

函數解釋:

rand() :產生 0-1之間的小數,簡稱種子.rand()*25 產生的數 在 0- 25 之間,不包括25

floor(val): 生成最近接val的最大整數

md5() :對字符串進行Md5加密(單向),生成的字符串長度是32位。

substring(str,pos,len):截取字符串,第一個參數:待截取的字符串,第二個參數:開始的位置(這里有些不同,下標開始位置為1,可以試試下),第三個參數:截取的長度.

2.將方式1進行包裝一下:自定義函數

drop function if exists rand_str;#第一句: 如果存在重名函數,就將其刪除 create function rand_str(strlen smallint) returns varchar(255)#第二句: 定義一個函數,名稱'rand_str' ,參數名 strlen 參數類型 smallint , 返回值類型 varchar(255) ,特別 注意下 這里的 是returns 下面的是 return#BEGIN#相當于左大括號 '{'DECLARE result_str VARCHAR(255) DEFAULT '';#聲明返回值對象,類型 ,長度 ,默認值SET result_str =SUBSTRING(MD5(RAND()),32-strlen,strlen);#設置返回值對象的值 方式1中簡單粗暴的函數 RETURN result_str;#返回 結果對象 這里的是 returnEND# 結束標識 相當于 '}'

3.自定義函數 直接上代碼

每一句的實現就不解釋了,可以參加方式2中的代碼解釋看一下

DROP FUNCTION IF EXISTS rand_str;create FUNCTION rand_str(strlen SMALLINT ) RETURNS VARCHAR(255)BEGINDECLARE randStr VARCHAR(255) DEFAULT 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';DECLARE i SMALLINT DEFAULT 0;DECLARE resultStr VARCHAR(255) DEFAULT '';WHILE i<strlen DOSET resultStr=CONCAT(SUBSTR(randStr,FLOOR(RAND()*LENGTH(randStr))+1,1),resultStr);SET i=i+1;END WHILE;RETURN resultStr;END

以上所述是小編給大家介紹的Mysql 自定義隨機字符串的實現方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對錯新站長站網站的支持!

您可能感興趣的文章:

mysql生成隨機字符串函數分享MySQL中隨機生成固定長度字符串的方法MySQL中字符串索引對update的影響分析python實現mysql的單引號字符串過濾方法Mysql字符串字段判斷是否包含某個字符串的2種方法Mysql中實現提取字符串中的數字的自定義函數分享mysql截取的字符串函數substring_index的用法sqlserver、mysql獲取連接字符串步驟Mysql字符串處理函數詳細介紹、總結mysql獲取字符串長度函數(CHAR_LENGTH)
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 山阴县| 西昌市| 汕尾市| 罗定市| 磐石市| 平度市| 宜良县| 教育| 桐柏县| 安西县| 渭源县| 汉源县| 通城县| 海口市| 溧阳市| 高陵县| 桐乡市| 德钦县| 无为县| 赫章县| 阳泉市| 偃师市| 富蕴县| 滨州市| 翁源县| 江油市| 苗栗市| 光山县| 福贡县| 兴山县| 正宁县| 永新县| 西乌珠穆沁旗| 新河县| 庄浪县| 麦盖提县| 通州区| 奉化市| 祥云县| 玛纳斯县| 迭部县|