加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL中RAND函数有什么作用 怎样运用的

发布时间:2023-04-30 12:38:56 所属栏目:MsSql教程 来源:
导读:这篇文章主要介绍了“SQL中RAND函数有什么作用,怎样使用的”相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SQL中RAND函数有什么作用,怎样使用的文章都会有所收获,下面我

这篇文章主要介绍了“SQL中RAND函数有什么作用,怎样使用的”相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SQL中RAND函数有什么作用,怎样使用的文章都会有所收获,下面我们一起来看看吧。

SQL RAND 函数

SQL 有一个 RAND 函数,用于产生 0 至 1 之间的随机数:

SQL> SELECT RAND( ), RAND( ), RAND( );

+------------------+-----------------+------------------+

| RAND( ) | RAND( ) | RAND( ) |

+------------------+-----------------+------------------+

| 0.45464584925645 | 0.1824410643265 | 0.54826780459682 |

+------------------+-----------------+------------------+

1 row in set (0.00 sec)

当以某个整数值作为参数来调用的时候,RAND() 会将该值作为随机数发生器的种子。对于每一个给定的种子,RAND() 函数都会产生一列可以复现的数字:

SQL> SELECT RAND(1), RAND( ), RAND( );

+------------------+------------------+------------------+

| RAND(1 ) | RAND( ) | RAND( ) |

+------------------+------------------+------------------+

| 0.18109050223705 | 0.75023211143001 | 0.20788908117254 |

+------------------+------------------+------------------+

1 row in set (0.00 sec)

你可以使用 ORDER BY RAND() 来对一组记录进行随机化排列,如下所示:

SQL> SELECT * FROM employee_tbl;

+------+------+------------+--------------------+

| id | name | work_date | daily_typing_pages |

+------+------+------------+--------------------+

| 1 | John | 2007-01-24 | 250 |

| 2 | Ram | 2007-05-27 | 220 |

| 3 | Jack | 2007-05-06 | 170 |

| 3 | Jack | 2007-04-06 | 100 |

| 4 | Jill | 2007-04-06 | 220 |

| 5 | Zara | 2007-06-06 | 300 |

| 5 | Zara | 2007-02-06 | 350 |

+------+------+------------+--------------------+

7 rows in set (0.00 sec)

现在,试试下面的命令:

SQL> SELECT * FROM employee_tbl ORDER BY RAND();

+------+------+------------+--------------------+

| id | name | work_date | daily_typing_pages |

+------+------+------------+--------------------+

| 5 | Zara | 2007-06-06 | 300 |

| 3 | Jack | 2007-04-06 | 100 |

| 3 | Jack | 2007-05-06 | 170 |

| 2 | Ram | 2007-05-27 | 220 |

| 4 | Jill | 2007-04-06 | 220 |

| 5 | Zara | 2007-02-06 | 350 |

| 1 | John | 2007-01-24 | 250 |

+------+------+------------+--------------------+

7 rows in set (0.01 sec)

 

SQL> SELECT * FROM employee_tbl ORDER BY RAND();

+------+------+------------+--------------------+

| id | name | work_date | daily_typing_pages |

+------+------+------------+--------------------+

| 5 | Zara | 2007-02-06 | 350 |

| 2 | Ram | 2007-05-27 | 220 |

| 3 | Jack | 2007-04-06 | 100 |

| 1 | John | 2007-01-24 | 250 |

| 4 | Jill | 2007-04-06 | 220 |

| 3 | Jack | 2007-05-06 | 170 |

| 5 | Zara | 2007-06-06 | 300 |

+------+------+------------+--------------------+

7 rows in set (0.00 sec)

现在大家对于SQL中RAND函数有什么作用,怎样使用的的内容应该都有一定的认识了吧,希望这篇能对大家有所帮助。

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章