mysql数据自定义随机_Mysql 自定义随机字符串
前几天在开发一个系统,需要用到随机字符串,但是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;
#返回 结果对象 这里的是 return
END
# 结束标识 相当于 '}'
3.自定义函数直接上代码
每一句的实现就不解释了,可以参加方式2中的代码解释看一下
DROP FUNCTION IF EXISTS rand_str;
create FUNCTION rand_str(strlen SMALLINT ) RETURNS VARCHAR(255)
BEGIN
DECLARE randStr VARCHAR(255) DEFAULT 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';
DECLARE i SMALLINT DEFAULT 0;
DECLARE resultStr VARCHAR(255) DEFAULT '';
WHILE i
SET resultStr=CONCAT(SUBSTR(randStr,FLOOR(RAND()*LENGTH(randStr))+1,1),resultStr);
SET i=i+1;
END WHILE;
RETURN resultStr;
END
mysql数据自定义随机_Mysql 自定义随机字符串相关推荐
- mysql动态函数库_mysql自定义函数与动态查询
介绍下mysql自定义函数的例子,以及插入单引号的方法,动态执行查询与字符串拼接的相关内容. 1.mysql自定义函数的例子 mysql不能像oracle 一样写 动态SQL. 代码示例: DROP ...
- rds支持mysql自带函数吗_MySQL自定义函数(CREATE FUNCTION)
在使用MySQL的过程中,MySQL 自带的函数可能完成不了我们的业务需求,这时候就需要自定义函数.自定义函数是一种与存储过程十分相似的过程式数据库对象.它与存储过程一样,都是由 SQL 语句和过程式 ...
- mysql判断纯数字_MYSQL中判断字符串是否为纯数字
今天下午产品的需求中要求要把一个数据库字段类型是text类型,但是字段里面的字段值是纯数字的记录找出来做统计使用,开始觉得不能够实现,后面网上查了一下,最后按照产品的要求做出来了,但是实现的过程中出现 ...
- mysql数据排序指令_MySQL 排序 | 菜鸟教程
MySQL 排序 我们知道从 MySQL 表中使用 SQL SELECT 语句来读取数据. 如果我们需要对读取的数据进行排序,我们就可以使用 MySQL 的 ORDER BY 子句来设定你想按哪个字段 ...
- linux成功mysql数据直接拷贝_mysql数据库数据从一个linux系统移植到另一个linux系统的方法...
背景 问题介绍 现在有一个linux系统的机器上数据需要移植到另外一个linux系统上.老机器称A机器,新机器称B机器. 前期调研 鉴于网上资料很多都是相同内容,而数据库的数据一般都很重要,这些方法都 ...
- mysql数据表操作_MySQL数据表基本操作实例详解
本文实例讲述了MySQL数据表基本操作.分享给大家供大家参考,具体如下: 数据表的基本操作 1.主键约束要求主键列的数据唯一,并且不允许为空.主键能够唯一地识别表中的一条记录,可以结合外键来定义不同数 ...
- mysql 数据表内容_mysql数据库内容相关操作
第一:介绍 mysql数据内容的操作主要是: INSERT实现数据的插入 UPDATE实现数据的更新 DLETE实现数据的删除 SELECT实现数据的查询. 第二:增(insert) 1.插入完整的数 ...
- mysql 定一个函数_mysql自定义函数
mysql中的UDF(自定义函数),其实是个好东西,比如可以写好一些方法或 函数,然后进行调用,而且是在SQL语句中可以进行调用. DROP FUNCTION CalculateAmount CREA ...
- mysql 插入指定值_mysql实现随机把字段值插入指定表
今天在一个群里,一个小伙伴问了一个问题,mysql怎么随机把字母A或者B插入到表中的某个字段中去 案例如下: INSERT INTOt_rand(sex)VALUES(ELT(CEILING(rand ...
最新文章
- TCP/IP和OSI4层、7层协议介绍
- python 显示html_如何使用python在本地显示带有html表单的网...
- [c#]Dll自定义目录
- php自动维护,完全禁用关闭Windows Server 2012R2自动维护功能禁用WIN2012R2自动维护
- 牛客多校7 - A National Pandemic(树链剖分+线段树)
- XCTF-MISC-新手区-掀桌子
- why Material request downlaod get an empty BDOC in SMW01 - structure MGV_TLMNR
- 本地方法(JNI)——调用 java 方法
- unity 是厘米还是米_乔丹19岁才1.75米,2年增高近20公分,这个长高方法你能坚持多久...
- 灰色预测模型matlab_Matlab数据分析,2020研究生报名人数灰色预测
- 实现横向排列的几种方案
- 20171001~08总结
- 纯JS实现简易扫雷小游戏网页项目
- 瑞星2008序列号正确号码
- Python的GUI图形界面工具大全
- 饱和和非饱和激活函数
- JavaEE_Swagger
- php开发地图导航,百度地图API使用方法详解
- iphone4s更换电池_更换iPhone电池有多困难?
- 请教各位仁兄 ,如何给delphi7增加gdi+的功能?
热门文章
- iOS中的UIScrollView(滑动视图)
- nmap入门之主机发现
- 原生 js前端路由系统实现3之代码 构建工具 和 querystring功能
- Android 5.0 API 的变化——开发人员注意
- Tomcat安装与环境变量的配置-Linux+windows
- mybatis3 添加ehcache支持
- oracle实例与数据库
- java 注释快捷打出时间_Java快捷---自动注释时间作者。。。
- 自旋锁和互斥锁实例_多线程编程之自旋锁
- web 前端 如何分享到instagram_如何找到靠谱的Web培训机构?web前端培训机构哪个好?...