我想在名为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,然后按升序对其进行排序。
梦里花落0921
TA贡献1772条经验 获得超6个赞
SELECT * FROM table ORDER BY id DESC,datechat desc LIMIT 50
如果您有一个日期字段,用于存储发送聊天的日期(和时间),或者任何每行填充有增量(按DESC排序)或非增量(按ASC排序)数据的字段,请将该字段作为第二列哪些数据应该排序。
那对我有用!!!希望对您有所帮助!!!!
慕斯709654
TA贡献1840条经验 获得超5个赞
select * from Table ORDER BY id LIMIT 30
注意:* id应该是唯一的。*您可以通过替换30查询中的来控制返回的行数
添加回答
举报
0/150
提交
取消