Mysql订购查询

时间:2009-10-19 18:12:14

标签: sql mysql

您好我想运行查询以从表中获取最后五条记录,但顺序相反。目前我有:

$query = "SELECT * FROM Table ORDER BY id DESC LIMIT 5"; 

这不是我想要的。

例如,如果最后五个记录是

15 16 17 18 19

我希望他们以

的形式返回

15 16 17 18 19

不是19 18 17 16 15这就是上面所做的。

我如何实现这一目标?如果我将DESC更改为ASC,它会给出1 2 3 4 5,因此也不起作用。

3 个答案:

答案 0 :(得分:5)

尝试子查询:

SELECT *
FROM (SELECT * FROM Table ORDER BY id DESC LIMIT 5) AS tmp
ORDER BY id ASC

答案 1 :(得分:1)

您可以使用子选择来执行此操作:

SELECT * FROM (SELECT * FROM table ORDER BY id DESC LIMIT 5) AS t ORDER BY id

答案 2 :(得分:1)

SELECT * FROM(SELECT * FROM Table ORDER BY id DESC LIMIT 5)T1 ORDER BY id ASC;