MySQL 如何在 MySQL 中按 ID 排序最近的 5 条记录

MySQL 如何在 MySQL 中按 ID 排序最近的 5 条记录

在进行数据库查询时,我们常常需要按照某个字段进行排序,以便获取最新、最热门等信息。本文将介绍如何在 MySQL 数据库中,通过按 ID 排序,获取最近的 5 条记录。

阅读更多:MySQL 教程

创建数据表

为了演示如何实现在 MySQL 中按 ID 排序最近的 5 条记录,我们先创建一个包含 id、title 和 create_time 三个字段的数据表 post。其中,id 为自增长主键,title 为标题,create_time 为创建时间,数据类型均为 VARCHAR。

创建 SQL 语句如下:

CREATE TABLE post (
  id INT(11) NOT NULL AUTO_INCREMENT,
  title VARCHAR(255) NOT NULL,
  create_time VARCHAR(20) NOT NULL,
  PRIMARY KEY (id)
) ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

插入测试数据

为了方便测试,我们向 post 表中插入 10 条测试数据。插入 SQL 语句如下:

INSERT INTO post (title, create_time) VALUES 
('文章1', '2021-01-01 10:00:00'),
('文章2', '2021-01-02 09:00:00'),
('文章3', '2021-01-02 11:00:00'),
('文章4', '2021-01-02 13:00:00'),
('文章5', '2021-01-03 10:00:00'),
('文章6', '2021-01-03 11:00:00'),
('文章7', '2021-01-04 10:00:00'),
('文章8', '2021-01-04 11:00:00'),
('文章9', '2021-01-05 10:00:00'),
('文章10', '2021-01-05 11:00:00');

按 ID 排序最近的 5 条记录

接下来,我们就可以使用 SQL 语句来按照 ID 排序最近的 5 条记录了。SQL 语句如下:

SELECT * FROM post ORDER BY id DESC LIMIT 5;

以上 SQL 语句的含义为,在 post 表中按照 ID 从大到小排序,获取前 5 条记录。使用 LIMIT 5 关键字限制返回结果的数量。

在 MySQL 客户端执行以上 SQL 语句,会得到以下结果:

+----+---------+---------------------+
| id | title   | create_time         |
+----+---------+---------------------+
| 10 | 文章10 | 2021-01-05 11:00:00 |
| 9  | 文章9   | 2021-01-05 10:00:00 |
| 8  | 文章8   | 2021-01-04 11:00:00 |
| 7  | 文章7   | 2021-01-04 10:00:00 |
| 6  | 文章6   | 2021-01-03 11:00:00 |
+----+---------+---------------------+

以上结果即为按 ID 排序最近的 5 条记录。

完整 SQL 语句示例

SELECT * FROM post ORDER BY id DESC LIMIT 5;

结论

本文介绍了如何在 MySQL 中按 ID 排序最近的 5 条记录,具体的 SQL 语句为:

SELECT * FROM post ORDER BY id DESC LIMIT 5;

以上 SQL 语句的含义为,在 post 表中按照 ID 从大到小排序,获取前 5 条记录。通过本文的介绍,相信大家已经对 MySQL 中按照某个字段排序后获取最近的若干条记录有了一定了解。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程