WEB开发网
开发学院数据库MySQL MySQL随机选取数据 阅读

MySQL随机选取数据

 2008-09-06 11:10:03 来源:WEB开发网   
核心提示:MySQ随机查询数据以前在群里讨论过这个问题,比较的有意思.mysql的语法真好玩.他们原来都想用PHP的实现随机,但取出多条好像要进行两次以上查询.翻了手册,找到了下面这个语句,可以完成任务了,SELECT * FROM table_name ORDER BY rand() LIMIT 5;MySQL的rand()函

MySQ随机查询数据

以前在群里讨论过这个问题,比较的有意思.mysql的语法真好玩.他们原来都想用PHP的实现随机,但取出多条好像要进行两次以上查询.翻了手册,找到了下面这个语句,可以完成任务了。

SELECT * FROM table_name ORDER BY rand() LIMIT 5;

MySQL的rand()函数在手册里是这么说的:

RAND()
RAND(N)

返回在范围0到1.0内的随机浮点值。如果一个整数参数N被指定,它被用作种子值。

关于MySQL的rand()函数的效率问题,大家可以参考《MySQL Order By Rand()效率》:http://www.phpq.net/mysql/mysql-order-by-rand.html

实际效果

mysql> select RAND();
-> 0.5925
mysql> select RAND(20);
-> 0.1811
mysql> select RAND(20);
-> 0.1811
mysql> select RAND();
-> 0.2079
mysql> select RAND();
-> 0.7888

MySQ随机更新数据

如何写一个语句能一下更新几百条MYSQL数据!

需要测试MYSQL数据库,里面有一个上万条数据的数据库,如何写一个PHP文件一下每次更新几百条信息,我都是写一个循环一次更新一条信息,这样我知道用WHILE写就可以了,要是一次更新好比100条数据改如何写呢?

正确答案是:UPDATE cdb_posts SET views = rand();

气死在insert 命令中,value()里面用rand(),注意字段宽度是否够一直以为mysql随机查询几条数据,就用 

SELECT * FROM `table` ORDER BY RAND() LIMIT 5

就可以了。

Tags:MySQL 随机 选取

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接