如何使用限制和某种分数选择随机行?

雷南·阿吉亚尔(Renan Aguiar)

我必须在其中有几行的地方进行sql查询。它仅在同一表中。

结果(1行或更多行)必须是随机的,并且遵循从0到...(任何大数,例如5000)的点系统。

例如,从此数据转储中,我想随机选择X个名称并遵循这些点。

选择3行的结果可能是id:

10、6和4

或6,10,4

如果是4行,结果将是:

10、6、4、9

要么

6,10,4,9

CREATE TABLE `draw` (
`id` int(11) NOT NULL,
`name` varchar(50) NOT NULL,
`points` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `draw` (`id`, `name`, `points`) VALUES (1, 'a', '65');
INSERT INTO `draw` (`id`, `name`, `points`) VALUES (2, 'b', '5000');
INSERT INTO `draw` (`id`, `name`, `points`) VALUES (3, 'c', '900');
INSERT INTO `draw` (`id`, `name`, `points`) VALUES (4, 'd', '10');
INSERT INTO `draw` (`id`, `name`, `points`) VALUES (5, 'e', '1000');
INSERT INTO `draw` (`id`, `name`, `points`) VALUES (6, 'f', '0');
INSERT INTO `draw` (`id`, `name`, `points`) VALUES (7, 'g', '650');
INSERT INTO `draw` (`id`, `name`, `points`) VALUES (8, 'h', '600');
INSERT INTO `draw` (`id`, `name`, `points`) VALUES (9, 'i', 30');
INSERT INTO `draw` (`id`, `name`, `points`) VALUES (10, 'j', '0');
缺口

您首先需要SELECT基于点的行,然后将其用作子查询,然后以随机顺序从该结果中进行选择。为了确保我们并不总是选择相同的用户如果有多个具有相同点,我们也承子查询RAND() points

SELECT *
FROM (SELECT *
      FROM draw
      ORDER BY points, RAND()
      LIMIT 4) d
ORDER BY RAND()

输出:

id  name    points
9   i       30
10  j       0
6   f       0
4   d       10

dbfiddle上的演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用随机和限制联合选择

使用 MySql Statment,如何从 100 限制中随机选择 10 行?

如何使用readlines()和先前随机生成的整数选择文件中的随机行?

r如何使用lpSolve并限制选择的行

如何以某种方式对随机数进行评分,数字越小,它给出的分数就越多?

如何根据索引的“分数”随机选择数组索引?

使用jDataBaseDriver选择随机行

如何使用熊猫从数据集中随机选择行?

如何选择某种元素?

如何使用随机选择颜色

如何在列表的每一行中随机选择行和列

如何使用数组制作随机分数生成器?

使用Java的Selenium Webdriver:如何从下拉选择选项菜单中选择随机的出生月份和随机的国家

如何使用if语句和.innerText比较分数?

如何在SQL中随机选择行?

如何修复取决于输入量和选择的分数

如何在data.table中选择具有动态确定的列名和截止限制的行?

如何使用多个随机选择的位置限制项目,以使每个项目的平均位置在一定范围内

使用内连接选择随机 4 行

如何选择某种格式的日期?

如何根据某个分数及其子项的分数动态选择和扩展某个搜索节点?

与和休眠限制,如何使用?

如何使用 Enum 限制 pydantic 的选择

如何使用Doctrine ODM随机选择?

如何使用带有信息增益和随机属性选择的j48 weka进行分类?

如何使用 jQuery 从每一行中随机选择一列?

存储随机数和分数

过滤并选择随机行

如何同时选择随机对象和随机选择对象的长度