我正在构建一个查询。假设我有一个这样的DB表:
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
有人知道我如何按升序获得最后三条记录吗?欢迎所有提示!
select * from (
select * from table_name order by id desc limit 3
) last_3_rows
order by id
对结果集进行排序,即执行select * from (<your query here>) order by id
这是另一个查询中的一个查询。重新排序您的查询。(SQL-如何重新排序使用限制约束的选择查询(
select * FROM (SELECT * FROM tableName LIMIT 3 ORDER BY id DESC) AN_UNUSUAL_NAME ORDER BY id ASC