开发者社区> 问答> 正文

从MySQL选择最后N行?mysql

我想在名为id的列(主键)中从MySQL数据库中选择最后50行。目标是行应该被分类ID在ASC秩序,这就是为什么这个查询不工作

SELECT * FROM table ORDER BY id DESC LIMIT 50; 同样值得注意的是,可以对行进行操作(删除),这就是为什么以下查询也不起作用的原因

SELECT * FROM table WHERE id > ((SELECT MAX(id) FROM chat) - 50) ORDER BY id ASC; 问题:如何从MySQL数据库中检索可以操纵并按ASC顺序排列的最后N行?

展开
收起
保持可爱mmm 2020-05-16 21:52:55 551 0
1 条回答
写回答
取消 提交回答
  • 您可以使用子查询来做到这一点:

    SELECT * FROM ( SELECT * FROM table ORDER BY id DESC LIMIT 50 ) sub ORDER BY id ASC 这将从中选择最后 50行table,然后按升序对其进行排序。来源:stack overflow

    2020-05-16 21:56:26
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
One Box: 解读事务与分析一体化数据库 HybridDB for MySQL 立即下载
One Box:解读事务与分析一体化数据库HybridDB for MySQL 立即下载
如何支撑HTAP场景-HybridDB for MySQL系统架构和技术演进 立即下载

相关镜像