MySQL随机选取数据
2008-09-06 11:10:03 来源:WEB开发网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
就可以了。
更多精彩
赞助商链接