MySQL中rand 生成随机数代码

要随机生成字符串代码如下:

在mysql教程中定义一个随机串的方法,然后再sql语句中调用此方法。

随机串函数定义方法:
select round(round(rand(),4)*10000);
不用函数直接这样就好了。

非得写函数的话,就
delimiter $$

create
    function get_rand()
    returns int deterministic
    begin
 declare return_no int;
 select round(round(rand(),4)*10000) into return_no;
 return return_no;
    end$$

delimiter ;

使用随机串函数方法示例:
update demotable set demoname=rand_string(32) where id>23
直接执行即可。

我在最开始测试的时候,就是因为没有加上min(id)的判断,结果有一半的时间总是查询到表中的前面几行。
完整查询语句是:
select * from `table`
where id >= (select floor( rand() * ((select max(id) from `table`)-(select min(id) from `table`)) + (select min(id) from `table`)))
order by id limit 1;
select *
from `table` as t1 join (select round(rand() * ((select max(id) from `table`)-(select min(id) from `table`))+(select min(id) from `table`)) as id) as t2
where t1.id >= t2.id
order by t1.id limit 1;
最后在php教程中对这两个语句进行分别查询10次,
前者花费时间 0.147433 秒
后者花费时间 0.015130 秒

以上就是mysql rand函数实现随机数的方法

时间: 2024-11-25 16:02:09

MySQL中rand 生成随机数代码的相关文章

JavaScript中用于生成随机数的Math.random()方法

  这篇文章主要介绍了JavaScript中用于生成随机数的Math.random()方法,是JS入门学习中的基础知识,需要的朋友可以参考下 此方法返回0(含)和1(不包括)之间的随机数 语法 ? 1 Math.random() ; 下面是参数的详细信息: NA 返回值: 返回0(含)和1(不包括)之间的随机数 例子: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 <html> <head> <title>

ASP.NET中C#生成随机数的几种方法

例子1 ASP.NET c#生成随机数的类文件,按要求产生一些随机数,最大值.最小值可以自己进行设定.代码简单,可放在你的公共库内供调用使用:类代码具体如下:  代码如下 复制代码 using System; namespace DotNet.Utilities {     /// BaseRandom  /// 产生随机数  /// 随机数管理,最大值.最小值可以自己进行设定.  public class BaseRandom  {   public static int Minimum =

mysql中RAND()随便查询记录效率问题和解决办法分享_Mysql

最近由于需要大概研究了一下MYSQL的随机抽取实现方法.举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1. 有两个方法可以达成以上效果. 1.新建一个表,里面存着 -5 至 5 之间的数.再利用order by rand()得到随机数. #建立指定范围数据表 复制代码 代码如下: #auther: 小强(占卜师) #date: 2008-03-31 create table r

mysql中RAND()随便查询记录效率问题和解决办法

最近由于需要大概研究了一下MYSQL的随机抽取实现方法.举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1. 有两个方法可以达成以上效果. 1.新建一个表,里面存着 -5 至 5 之间的数.再利用order by rand()得到随机数. #建立指定范围数据表  代码如下 复制代码 #auther: 小强(占卜师) #date: 2008-03-31 create table r

MySQL中随机生成固定长度字符串的方法_Mysql

要随机生成字符串代码如下: 在MySQL中定义一个随机串的方法,然后再SQL语句中调用此方法. 随机串函数定义方法: 复制代码 代码如下: CREATE DEFINER=`root`@`localhost` FUNCTION `rand_string`(n INT) RETURNS varchar(255) CHARSET latin1 BEGIN DECLARE chars_str varchar(100) DEFAULT 'abcdefghijklmnopqrstuvwxyzABCDEFGH

MySQL中rand函数随机取数据介绍

 代码如下 复制代码 SELECT * FROM table_name ORDER BY rand() LIMIT 5; rand在手册里是这么说的: RAND() RAND(N) 返回在范围0到1.0内的随机浮点值.如果一个整数参数N被指定,它被用作种子值.  代码如下 复制代码 mysql> select RAND();         -> 0.5925 mysql> select RAND(20);         -> 0.1811 mysql> select RA

C语言/C++中怎样产生随机数代码

C语言/ C++++怎样产生随机数:这里要用到的是rand()函数, srand()函数,C语言/C++里没有自带的random(int number)函数. (1) 如果你只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至RAND_MAX 间.RAND_MAX定义在stdlib.h, 其值为2147483647. 例如: #include<stdio.h>#include<stdlib.h>void main(){for(

JavaScript中用于生成随机数的Math.random()方法_基础知识

 此方法返回0(含)和1(不包括)之间的随机数语法 Math.random() ; 下面是参数的详细信息:     NA 返回值: 返回0(含)和1(不包括)之间的随机数 例子: <html> <head> <title>JavaScript Math random() Method</title> </head> <body> <script type="text/javascript"> var v

如何让.Net控件在设计时InitializeComponent()中不生成相关代码

控件|设计 组件的一些公共属性不希望被VS在设计时加到InitializeComponent()方法中怎么处理呢?我试过了,将属性加上[Browsable(false)]也不行.我的代码如下:    /// <summary>    /// 控制器通讯类型下拉列表框.    /// </summary>    public class CommunicationTypeComboBox : ComboBox    {        /// <summary>