如何获得具有限制的Ascending记录列表的结尾?

时间:2014-05-06 09:44:13

标签: mysql sql sorting limit

我正在与我正在构建的查询进行斗争。假设我有一个这样的数据库表:

id | some_string
----------------
1  | 'lala'
2  | 'jeje'
3  | 'poopoo'
4  | 'wicked wicked'

我现在想要按键递增最后三个记录(2,3和4)。我试过这个:

SELECT * FROM tableName LIMIT 3 ORDER BY id ASC

这让我得到前三个记录,而不是最后三个记录。我当然也可以使用下面的查询,它可以获得正确的记录,但是我没有按升序获得它们:

SELECT * FROM tableName LIMIT 3 ORDER BY id DESC

有人知道如何按升序排列最后三条记录吗?欢迎所有提示!

3 个答案:

答案 0 :(得分:1)

select * from (
  select * from table_name order by id desc limit 3 
) last_3_rows
order by id

答案 1 :(得分:0)

这是另一个查询中的查询。重新排序查询。(SQL - How to reorder a select query that uses the limit constraint

select * FROM (SELECT * FROM tableName LIMIT 3 ORDER BY id DESC) AN_UNUSUAL_NAME ORDER BY id ASC

答案 2 :(得分:0)

对结果集进行排序,即。做一个select * from (<your query here>) order by id