有时想从数据库表中获取随机记录。 例如,无涯教程的表存储了多个引号,因此需要在GUI上显示随机引号。在这种情况下,将编写一个SQL查询以从表中获取随机记录。在本节中,将看到如何从表中选择随机记录。
MySQL 不提供任何内置语句用于从数据库表返回随机行。可以借助 RAND()函数 完成此操作。
以下是从数据库表中选择随机记录的语法:
SELECT * FROM table_name ORDER BY RAND() LIMIT N;
让无涯教程详细了解该语句的参数:
通过示例了解如何从数据库表生成随机记录。首先,将使用以下语句创建一个名为" students" 的表:
mysql> CREATE TABLE students( id int NOT NULL AUTO_INCREMENT, name varchar(45) NOT NULL, class int NOT NULL, email_id varchar(65) NOT NULL, PRIMARY KEY (id) );
接下来,将使用 INSERT 语句将记录填充到该表中,如下所示:
INSERT INTO students (name, class, email_id) VALUES ('Stephen', 6, 'stephen@learnfk.com'), ('Bob', 7, 'bob@learnfk.com'), ('Steven', 8, 'steven@learnfk.com'), ('Donald', 6, 'donald@learnfk.com'), ('Jenifer', 9, 'jenifer@learnfk.com'), ('Peter', 9, 'peter@learnfk.com'), ('Alexandar', 7, 'alexandar@learnfk.com');
接下来,将使用查询显示表中的所有记录,如下所示:
mysql> SELECT * FROM students;
现在,将执行以下查询以从表中选择随机记录。假设要从表格中选择五个随机记录;将查询数据如下:
mysql> SELECT id, name, email_id FROM students ORDER BY RAND() LIMIT 5;
它返回以下输出:
链接:https://www.learnfk.comhttps://www.learnfk.com/mysql/mysql-select-random-records.html
来源:LearnFk无涯教程网
请注意,每当无涯教程执行RAND()函数时,它总是返回不同的结果,因为它是随机的。
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)