mysql的rand函数
项目中需要动态随机生成一些固定位数的随机数,如8位,5位等。
之前看到的写法是这样
ROUND(ROUND(RAND(),5)*100000)
这样写不太准确,有几率出现4位的情况,Rand() 函数是取 0 ~ 1(无限接近) 的随机函数
如果 某此随机数取出的 是 0.05321
那么这样转化出来的就是 5321 ,只有4位。
如果能用一个函数包装一下,取完数值后发现位数不对的时候,就补位进去就比较完美了。
下面是我改的一个函数,不过缺点是 生成的函数位数不能超过20位。当然改一改也是可以了。
DELIMITER $$
USE `prvecard`$$
DROP FUNCTION IF EXISTS `getRand`$$
CREATE DEFINER=`PECARD`@`%` FUNCTION `getRand`(counts INTEGER) RETURNS VARCHAR(20) CHARSET utf8
BEGIN
       DECLARE sTemp VARCHAR(20);
    DECLARE sTempCounts INTEGER;
       SET sTemp = CONCAT( ROUND(ROUND(RAND(),counts)*(POW(10,counts))),);
    
    IF(CHAR_LENGTH(sTemp)<counts) THEN
    
      SET sTempCounts = counts - CHAR_LENGTH(sTemp);
      SET sTemp = CONCAT(sTemp, RIGHT(CONCAT(POW(10,sTempCounts),),sTempCounts));
    END IF;
    
      RETURN sTemp;
END$$
DELIMITER ;
不过还得根据需要来随机
update company set directors=round(round(rand(),2)*1000),associate=round(round(rand(),2)*1000);
原文来自:http://www.2cto.com/database/201107/95191.html
mysql的rand函数的更多相关文章
- php MySQL使用rand函数随机取记录(转)
		
php MySQL使用rand函数随机取记录 如何在mysql中使用随机数, 如何写一个语句能一下更新几百条MYSQL数据! 需要测试MYSQL数据库,里面有一个上万条数据的数据库,如何写一个PHP文 ...
 - MySQL使用rand函数实现随机数[转]
		
如何写一个语句能一下更新几百条MYSQL数据! 需要测试MYSQL数据库,里面有一个上万条数据的数据库,如何写一个PHP文件一下每次更新几百条信息,我都是写一个循环一次更新一条信息,这样我知道用WHI ...
 - MySQL使用rand函数实现随机数
		
sql 的随机函数newID()和RAND() sql server的随机函数newID()和RAND() SELECT * FROM Northwind..Orders ORDER BY NEWID ...
 - MySQL的随机数函数rand()的使用技巧
		
咱们学php的都知道,随机函数rand或mt_rand,可以传入一个参数,产生0到参数之间的随机整数,也可以传入两个参数,产生这两个参数之间的随机整数. 而在mysql里,随机数函数rand不能传参, ...
 - MySQL中的RAND()函数使用详解(order by rand() 随机查询取前几条记录)
		
MySQL RAND()函数调用可以在0和1之间产生一个随机数: mysql> SELECT RAND( ), RAND( ), RAND( ); +------------------+--- ...
 - MySQL中的RAND()函数使用详解
		
转自:https://www.jb51.net/article/66697.htm MySQL RAND()函数调用可以在0和1之间产生一个随机数: ? 1 2 3 4 5 6 7 mysql> ...
 - MySQL内置函数
		
MySQL中的内置系统函数 用在SELECT语句,以及字句where order by having 中UPDTE DELETE 函数中可以将字段名作为变量来用,变量的值就是这个列对应的每一 ...
 - MySQL(5.6) 函数
		
字符串函数 ASCII(str) 说明:返回字符串 str 最左边字符的 ASCII 值 mysql'); mysql); mysql> SELECT ASCII('a'); mysql> ...
 - (MariaDB)MySQL内置函数大全
		
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...
 
随机推荐
- Java过滤任意(script,html,style)标签符,返回纯文本--封装类
			
import java.util.regex.Pattern; /** * 过滤标签字符串,返回纯文本 * */ public class ChangePlainText { ...
 - Java常量定义需要注意事项及static作用(复习)
			
在任何开发语言中,都需要定义常量.在Java开发语言平台中也不例外.不过在Java常量定义的时候,跟其他语言有所不同.其有自己的特色.在这篇文章中,主要针对Java语言中定义常量的注意事项进行解析,帮 ...
 - x-requested-with 请求头 区分ajax请求还是普通请求
			
在服务器端判断request来自Ajax请求(异步)还是传统请求(同步): 两种请求在请求的Header不同,Ajax 异步请求比传统的同步请求多了一个头参数 1.传统同步请求参数 accept t ...
 - 关于U盘启动操作系统《30天自制操作系统》
			
原本的启动是从img启动的,并且这个img是用FAT12文件系统进行格式化的(详细去搜索FAT12文件格式,这里给大家推荐一篇http://www.doc88.com/p-646605198560.h ...
 - iOS Sqlite加密(FMDB/SQLCipher)
			
/** * 对数据库加密 * * @param path path description * * @return return value description */ + (BOOL)encryp ...
 - A电脑的gho还原到B电脑上的驱动解决方案
			
近来给B笔记本做系统,我有一个gho,是A电脑的,我想直接把系统复制过去,我的这个gho有50G,里面已经配置好了java,安卓,cocos2dx的各种环境变量,安卓开发的朋友都知道这个有多恶心,我就 ...
 - 如何编译Linux内核
			
内核,是一个操作系统的核心.它负责管理系统的进程.内存.设备驱动程序.文件和网络系统,决定着系统的性能和稳定性.Linux作为一个自由软件,在广 大爱好者的支持下,内核版本不断更新.新的内核修订了旧内 ...
 - 由 12306.cn 谈谈高并发+高负载网站性能技术
			
12306.cn 网站挂了,被全国人民骂了.我这两天也在思考这个事,我想以这个事来粗略地和大家讨论一下网站性能的问题.因为仓促,而且完全基于本人有限的经验和了解, 所以,如果有什么问题还请大家一起讨论 ...
 - GOOGLE突破图书馆入口IP限制之技巧
			
很多图书馆都要注册或要本地IP才能浏览或下载图书,有没有另类的快速办法能快速突破图书馆的入口,能随意地下载图书呢? 希望大家在GOOGLE里试试这个:“index of/ ” inurl:lib 你将 ...
 - iframe高度动态自适应
			
by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=1294 一.前言碎碎念 ...