为此,您可以使用ORDER BY RAND LIMIT。让我们首先创建一个表-
mysql> create table DemoTable1581 -> ( -> StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> StudentName varchar(20) -> );
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable1581(StudentName) values('Chris'); mysql> insert into DemoTable1581(StudentName) values('Bob'); mysql> insert into DemoTable1581(StudentName) values('Sam'); mysql> insert into DemoTable1581(StudentName) values('Mike'); mysql> insert into DemoTable1581(StudentName) values('Carol');
使用select语句显示表中的所有记录-
mysql> select * from DemoTable1581;
这将产生以下输出-
+-----------+-------------+ | StudentId | StudentName | +-----------+-------------+ | 1 | Chris | | 2 | Bob | | 3 | Sam | | 4 | Mike | | 5 | Carol | +-----------+-------------+ 5 rows in set (0.00 sec)
这是从MySQL数据库中选择随机记录的查询-
mysql> select * from DemoTable1581 order by rand() limit 1;
这将产生以下输出-
+-----------+-------------+ | StudentId | StudentName | +-----------+-------------+ | 4 | Mike | +-----------+-------------+ 1 row in set (0.07 sec)
问题内容: 请考虑下表: 实际上,该表具有600,000条记录,但是如示例表中所示,某些已被删除(因此最高的> 600,000)。 可以是,或。 我需要 随机选择 1200条Tweet,每条400条。这可能与一个查询有关吗? 问题答案: 如果(3)的可能值数量有限,则可以通过一组各自具有和的查询轻松完成此操作: 为了将应用于每个组,必须将组括在中。
问题内容: 问题答案: 请参阅order_by docs。还要注意,这种方法的伸缩性不好(实际上,伸缩性非常好)。
问题内容: 这个问题已经在这里有了答案 : 如何使用Django获取两条随机记录 (6个答案) 3年前关闭。 问题答案: 请参阅order_by docs 。还要注意,这种方法无法很好地扩展(实际上,它的扩展确实非常,非常糟糕)。当您有大量数据时,请参见此SO答案,以获得更好的方式来处理随机选择。
问题内容: 我正在使用PHP和MySQL创建一个简单的Web应用程序。在其中,我需要以随机顺序从表中随机选择一小组行。如何使用MySQL实现此类目标? 问题答案: SELECT * FROM table ORDER BY RAND() LIMIT 10;
问题内容: 这是我的表结构。在这里我想随机选择4行,所以我在查询中使用RAND()mysql函数,我的问题是 如何配对到行。我的意思是,我想始终选择pid 2和3。我需要按以下顺序。 我不想打破对A2 A3 或或或等 我使用下面的查询,但对我不起作用 问题答案: turbod与他的答案很接近,他只是随机排序,当您似乎想要按pid排序时,在获得所需的随机行以及与A2和A3有关的行之后:
问题内容: 我有一个带有表的数据库,看起来像这样: 有数十万条记录。每个可以在7个不同的表之一中,对应于一个表: 我想要一个从每个类别中选择1个随机项目的查询。解决这个问题的最佳方法是什么?我知道使用和用于类似的随机查询,但是我从未做过这样的事情。 问题答案: 此查询以随机顺序返回加入类别的所有项目: 要将每个类别限制为一个类别,请将查询包装在 partial中 : 请注意,当查询同时具有and