为了账号安全,请及时绑定邮箱和手机立即绑定

从MySQL选择最后N行

从MySQL选择最后N行

弑天下 2019-11-26 14:55:20
我想在名为id的列(主键)中从MySQL数据库中选择最后50行。目标是行应该被分类ID在ASC秩序,这就是为什么这个查询不工作SELECT     *FROM    `table`ORDER BY id DESCLIMIT 50;同样值得注意的是,可以对行进行操作(删除),这就是为什么以下查询也不起作用的原因SELECT     *FROM    `table`WHERE    id > ((SELECT             MAX(id)        FROM            chat) - 50)ORDER BY id ASC;问题:如何从MySQL数据库中检索可以操纵并按ASC顺序排列的最后N行?
查看完整描述

3 回答

?
繁花不似锦

TA贡献1851条经验 获得超4个赞

您可以使用子查询来做到这一点:


SELECT * FROM (

    SELECT * FROM table ORDER BY id DESC LIMIT 50

) sub

ORDER BY id ASC

这将从中选择最后 50行table,然后按升序对其进行排序。


查看完整回答
反对 回复 2019-11-26
?
梦里花落0921

TA贡献1772条经验 获得超5个赞

SELECT * FROM table ORDER BY id DESC,datechat desc LIMIT 50

如果您有一个日期字段,用于存储发送聊天的日期(和时间),或者任何每行填充有增量(按DESC排序)或非增量(按ASC排序)数据的字段,请将该字段作为第二列哪些数据应该排序。


那对我有用!!!希望对您有所帮助!!!!


查看完整回答
反对 回复 2019-11-26
?
慕斯709654

TA贡献1840条经验 获得超5个赞

select * from Table ORDER BY id LIMIT 30

注意:* id应该是唯一的。*您可以通过替换30查询中的来控制返回的行数


查看完整回答
反对 回复 2019-11-26
  • 3 回答
  • 0 关注
  • 637 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信