MySQL查询第一条记录和最后一条记录

本文介绍了在项目开发中如何查询满足特定条件的最早或最晚记录。提供了两种方法:1) 通过排序和生成行号获取第一条记录;2) 使用排序和分页来提高效率。作者建议使用分页和排序的方式,因为它在效率上更优,特别是对于大量数据的操作。作为一个初级Java开发者,作者欢迎与他人交流技术,共同进步。

提示:阅读此博客预计消耗你5-8分钟

我们在进行项目需求开发的时候,可能会遇到查询满足特定条件的记录,但是如果有多条记录都满足条件,该怎么弄?

下面提供两条案例,具体使用可按照自己需求进行更改。

1、查询创建时间最早的一条记录,将它排序,生成行号,然后取出第一行的ID。

在这里插入图片描述

如果你知道@是什么的话,应该就能知道这个SQL大概是什么意思了,不知道的小可爱可以去看看存储过程,这里我们可以看到执行的时间大概是0.006s,效率一般。

2、按照字段进行排序,然后进行分页,如果这里放的也是时间字段,那么使用DESC依然也是可以取到时间最小的一行的,然后按照limit取第一条或者最后一条的数据

在这里插入图片描述
可以看出,使用分页和排序,执行的时间会更好,如果是物理操作的话,还是使用分页和排序比较好,毕竟时间效率放在这里的,我们可以看到这里相比之前的方法要快了一倍不止。

我自己之前也是查阅了很多博客,也是没有找到方法,可能是业务做少了,使用的是第一种的方法,当时觉得这种方法,效率也不差,所以就使用了,建议第二种

在下是入行没多久的Java猿,可以一起讨论技术吖,共同见证自己的技术成长。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心系编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值