mysql如何随机抽取数据库里的几条数据呢?读取随机数只要使用RAND就可以了,方法非常的简单,下面我来给各位举个例子.
数据库连接这些就不贴代码了,直接粘贴sql语句,代码如下:
- SELECT`title`,`id`
- FROMnews
- ORDERBYRAND()
- LIMIT0,5;
随机从new表里取出5条数据,显示id和标题,代码如下:
- mysql>selectusernamefromcdb_membersorderbyrand()limit0,5;
- +-----------+
- |username|
- +-----------+
- |Takeshi|
- |icelong|
- |狗狗请罪|
- |菜头|
- |weike1130|
- +-----------+
- 5rowsinset(0.01sec)
- 1、
- SELECT*FROM`table`ASt1JOIN(SELECTROUND(RAND()*((SELECTMAX(id)FROM`table`)-(SELECTMIN(id)FROM`table`))+(SELECTMIN(id)FROM`table`))ASid)ASt2WHEREt1.id>=t2.idORDERBYt1.idLIMIT1;//开源代码phpfensi.com
- 2、
- SELECT*FROM`table`WHEREid>=(SELECTfloor(RAND()*((SELECTMAX(id)FROM`table`)-(SELECTMIN(id)FROM`table`))+(SELECTMIN(id)FROM`table`)))ORDERBYidLIMIT1;
最后在php中对这两个语句进行分别查询10次,后者花费时间 0.147433 秒,前者花费时间 0.015130 秒.