返回首页DA系统C#IDE文件同步服务屏保 今天是: 2026-05-05    "立夏"  夏季的第一个节气,表示盛夏时节的正式开始

搜索
热搜: linux 技术
Hi~登录注册
查看: 1709|回复: 0

[转载] 【转载】Mysql查询最后一条(最新)数据

[复制链接]
发表于 2023-4-19 17:08:42 | 显示全部楼层 |阅读模式

少侠不来段修仙之旅吗~

您需要 登录 才可以下载或查看,没有帐号?注册成为修仙之旅的少年~

x
Mysql查询最后一条(最新)数据


查询最后一条(最新添加)的数据
目的:项目中需要我查询表中上一次添加的最新数据。

做法
表中没有ID自增字段时

查询表中有多少条数据,假定为n
select count(*) from my_table1;


根据个数使用limit 查询最后一条数据
select * from my_table1 limit (n-1),1;  //(n-1)处必须是整数,因为计数从0开始所以减一

因为limit后参数必须为0或正整数,测试不支持变量,所以如果用在项目里只能动态SQL语句拼接,比较麻烦。

SET @var_num = (select count(*) from your_table) - 1;
SET @var_sql = CONCAT("SELECT * FROM your_table LIMIT ",@var_num,",1 ;");
SET @exec_sql = @var_sql;  
PREPARE sql1 FROM @exec_sql;
EXECUTE sql1;

表中有ID自增字段时
使用id倒序排列,再取第一个(常用语句

select * from my_table2 order by id desc limit 1;

使用max,取id最大项记录
select * from my_table2 where id = (select max(id) from my_table2);


相关知识点
count(expression)
返回查询结果的记录数(Null不计算在内)


limit
limit offset,count; 或 limit count;
用来约束查询结果的条数,可以接收一个或两个参数,两个参数的值必须为0或正整数。
offset参数指定要返回的第一行的偏移量,第一行的偏移量为0,而不是1。
count指定要返回的最大行数。


desc
降序关键字,是descend的缩写,用法:select * from 表 order by 字段 desc
同样的还有升序关键词 asc





游客
回复
*滑块验证:

DA论坛飞机票来了~
快速回复 返回顶部 返回列表