毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 数据库 >> 正文

mysql 查询多条随机结果

更新时间:2013-1-8:  来源:毕业论文

mysql 查询多条随机结果
三个字段:id   name    probability
probability初始默认全是1

probability值越大,随机出来的概率越高。

select * from kzmod_mapchoose order by probability*(SELECT FLOOR( MAX(probability) * RAND()) FROM kzmod_mapchoose ) desc limit 8;

我改了一条数据的值为10,它就一直都出现了。。
怎么改进?还有就是,怎样知道概率值大于平均值多少时,这条数据会百分百出现?

SELECT a.* FROM kzmod_mapchoose a INNER JOIN
(SELECT id,probability*(SELECT FLOOR(MAX(probability) * RAND()) FROM kzmod_mapchoose)
AS aa
 FROM kzmod_mapchoose) c
ON a.id=c.id ORDER BY c.aa

select *
from kzmod_mapchoose a, (select sum(probability)*RAND() as k from kzmod_mapchoose) b
where (select sum(probability) from kzmod_mapchoose where probability>=a.probability)> b.k
order by (select sum(probability) from kzmod_mapchoose where probability>=a.probability) desc
limit 1

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。