我正在处理用户输入竞赛积分的查询。他们可以输入尽可能多的分数。我需要随机选择一个获胜者,但是从技术上讲,输入更多积分的人应该有更好的机会被选中。
我目前使用 rand 和每个用户的总点数拉取查询。
表数据如下所示:
fname lname user_id 点 约翰贝克 1 300 罗伯特巴克斯特 2 40 杰森·多伊 3 900
如果我多次运行查询,John 将比 Robert 有更好的机会,但 Jason 会比 John 和 Robert 有更好的机会。
select * from table order by rand()